/*
 * VELENO PORTAL - APP.CSS
 * CSS unico centralizzato per desktop + mobile.
 * Include Bootstrap legacy, tema, componenti, sidebar, pagine SPA, news, ufaults e fix responsive.
 * Vendor esterni/speciali mantenuti fuori solo quando autonomi (Leaflet, RIPscrip).
 */

:root{
  --portal-bg:#050505;
  --portal-panel:#0b0b0b;
  --portal-text:#e8e8e8;
  --portal-muted:#a9a9a9;
  --portal-accent:#c00018;
  --portal-accent-2:#ff2638;
  --portal-border:rgba(255,38,56,.45);
  --portal-shadow:0 0 24px rgba(192,0,24,.35);
  --portal-radius:10px;
  --portal-z-menu:1100;
  --portal-z-modal:2000;
}

*{box-sizing:border-box;}
img,video,canvas,svg{max-width:100%;height:auto;}

/*
 * Veleno centralized portal stylesheet
 * Generated cleanup: desktop + mobile portal CSS consolidated here.
 * Keep page/layout/theme/sidebar/responsive overrides in this single file.
 */

/* ==========================================================================
   Source: root/bootstrap/css/bootstrap.min.css
   Centralized into root/css/portal.css
   ========================================================================== */

/*!
 * Bootstrap v3.3.5 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../bootstrap/fonts/glyphicons-halflings-regular.eot);src:url(../bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../bootstrap/fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../bootstrap/fonts/glyphicons-halflings-regular.woff) format('woff'),url(../bootstrap/fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14.33px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:3;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:2;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{min-height:16.43px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}

/* ==========================================================================
   Source: root/css/offcanvas.css
   Centralized into root/css/portal.css
   ========================================================================== */

/*
 * Style tweaks
 * --------------------------------------------------
 */
html,
body {
	overflow-x: hidden; /* Prevent scroll on narrow devices */
}
body {
	padding-top: 70px;
}
footer {
	padding: 30px 0;
}

/*
 * Off Canvas
 * --------------------------------------------------
 */
@media screen and (max-width: 767px) {
  .row-offcanvas {
	position: relative;
	-webkit-transition: all .25s ease-out;
		 -o-transition: all .25s ease-out;
			transition: all .25s ease-out;
  }

  .row-offcanvas-right {
	right: 0;
  }

  .row-offcanvas-left {
	left: 0;
  }

  .row-offcanvas-right
  .sidebar-offcanvas {
	right: -50%; /* 6 columns */
  }

  .row-offcanvas-left
  .sidebar-offcanvas {
	left: -50%; /* 6 columns */
  }

  .row-offcanvas-right.active {
	right: 50%; /* 6 columns */
  }

  .row-offcanvas-left.active {
	left: 50%; /* 6 columns */
  }

  .sidebar-offcanvas {
	position: absolute;
	top: 0;
	width: 50%; /* 6 columns */
  }
}

/* ==========================================================================
   Source: root/css/style.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* Alternating rows in lists of messages, Who's Online, etc. */
.striped:nth-of-type(even), .table-striped > tbody > tr:nth-child(odd) > td, .table-striped > tbody > tr:nth-child(odd) > th {
	background: #F2F2F2;
}

/* A link in a list when the mouse is hovering over it (mostly applies to the Forum) */
a.list-group-item:hover, a.list-group-item:active, li.list-group-item.mail:hover {
	background-color: #A9E2F3;
}

/* A link to a scanned sub in a list, should you wish to style it, I guess. */
a.list-group-item.scanned:hover {
}

/* An unread mail message in the list view. */
a.unread {
	background: #FFFFFF;
}

span.badge.new {
	background: #2E9AFE;
	color: #FFFFFF;
}

/* A read mail message in the list view. */
a.read {
	background: #E6E6E6;
}

/* Unread-message indicator for scanned subs. */
span.badge.scanned {
	background-color: #2E9AFE;
}

/* Unread-message indicator for all subs. */
span.badge.total {
}

/* Inline quoted text in a message. */
blockquote {
	font-size: 14px;
	border-left : 5px solid #A4A4A4;
}

/* The 'current' message being viewed in a thread. */
li.current {
	border-left-color : #000000;
	border-right-color : #000000;
}

/* Unused? */
span.message-header.unread {
	background-color: #FCF8E3;
}

/*** Dark mode ***/

/* default links, like the breadcrumbs */
.dark a {
	color: #75b8f1;
}

/* background of the top bar */
.dark .navbar {
	background-color: #222;
}

/* bbs name at top left */
.dark .navbar-brand {
	color: #ccc;
}
.dark .navbar-brand:hover {
	color: #fff;
}

/* hover for the top nav buttons */
.dark .navbar-default a:hover {
	color: #8cc1ee !important;
	color: #fff;
	background-color: #222 !important;
}

/* the active top nav button when opened */
.dark .navbar-default .navbar-nav>.open>a,
.dark.navbar-default .navbar-nav>.open>a:focus,
.dark.navbar-default .navbar-nav>.open>a:hover {
	background-color: #333;
	color: #EEE;
}

/* dropdown menus */
.dark .dropdown-menu {
	background-color: #222;
}
.dark .dropdown-menu li a {
	color: #75b8f1;
}

/* background color of alternate rows in lists */
.dark .striped:nth-of-type(even), .dark .table-striped > tbody > tr:nth-child(odd) > td, .dark  .table-striped > tbody > tr:nth-child(odd) > th {
	background: #222;
}

/* this is the text and color for most items, including non-alternating rows */
.dark .list-group-item {
	background-color: #333;
	color: #ddd;
	border-color: #888;
}

/* A link in a list when the mouse is hovering over it (mostly applies to the Forum) */
.dark a.list-group-item:hover, .dark  a.list-group-item:active {
	background-color: #888;
	color: #222;
}

.dark li.list-group-item.mail:hover {
	background-color: #888;
	color: #FFF;
}

/* background color for the breadcrumb box */
.dark .breadcrumb {
	background-color: #333;
}

/*** You probably don't need to mess with rules below this line. ***/

blockquote {
	margin: .5em;
	padding: .5em;
}

div.message {
	margin: 1em 0 1em 0;
}

input.dropdown {
	clear: both;
	margin: 0 0 1em 0;
}

pre.ansi {
	background-color : black;
	font-family : Courier New, monospace;
	line-height : 1;
}

pre.list {
	color : inherit;
	background-color : inherit;
	border : none;
}

#sidebar > .list-group {
	gap: 0;
	border: none;
}

.list-group-item.sidebar {
	overflow: hidden;
	word-wrap: break-word;
	background: transparent;
	border: none;
	padding: 0;
}

.list-group-item.sidebar:empty {
	display: none;
}

.icon {
	margin: 0 1em 1em 0;
}

.reply {
	margin: 1em 0 1em 0;
}

/* Upvote button */
.btn-uv { }

/* Downvote button */
.btn-dv { }

.upvote-bg {
	background-color : #F0B27A;
}

.downvote-bg {
	background-color : #85C1E9;
}

.upvote-fg, .upvote:hover {
	color : #F0B27A;
}

.downvote-fg, .downvote:hover {
	color : #85C1E9;
}

.indicator {
    background-color: transparent !important;
    -webkit-animation: indicator-fade 3s ease 0s 1 alternate !important;
}

@-webkit-keyframes indicator-fade {
    from { background-color: #82E0AA; }
    to { background-color: transparent; }
}

-moz-animation: indicator-fade 3s ease 0s 1 alternate !important;
}

@-moz-keyframes indicator-fade {
    from { background-color: #82E0AA; }
    to { background-color: transparent; }
}

-ms-animation: indicator-fade 3s ease 0s 1 alternate !important;
}

@-ms-keyframes indicator-fade {
    from { background-color: #82E0AA; }
    to { background-color: transparent; }
}

-o-animation: indicator-fade 3s ease 0s 1 alternate !important;
}

@-o-keyframes indicator-fade {
    from { background-color: #82E0AA;}
    to { background-color: transparent; }
}

animation: indicator-fade 3s ease 0s 1 alternate !important;
}

@keyframes indicator-fade {
    from { background-color: #82E0AA;}
    to { background-color: transparent; }
}

.dropdown-submenu {
    position: relative;
}
.dropdown-submenu > .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
} 

.breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	overflow: hidden;
}

.breadcrumb li {
	white-space: nowrap;
}

.dark {
	background-color: #222 !important;
	color: #eee;
}

.dark span.badge.ignored {
	background-color: #aaa;
}

.dark .text-danger {
	color: #ef1c18;
}

.dark .text-success {
	color: #3eef41;
}

.dark a.btn, .dark .icon {
	color: #000;
	background-color: #ddd !important;
}

.dark .btn {
	color: #000;
	background-color: #ddd ;
}

.dark .btn-primary {
	color: #FFF;
	background-color: #337ab7;
}

.dark a.btn :hover, .dark .icon:hover {
	color: #000;
	background-color: #fff !important;
}

@media (max-width: 767px) {
	.dark-switch {
		padding: 10px 15px;
	}
}

@media (min-width: 768px) {
	.dark-switch {
		padding: 0px;
	}
}

.dark .modal-content {
	background-color: #333 !important;
	color: #ddd !important;
}

.darkswitchbox {
	margin-block-start: 1em;
	margin-block-end: 1em;
	margin-inline-start: 0px;
	margin-inline-end: 0px;
	padding-inline-start: 40px;
}

.dark input,.dark select,.dark textarea {
	color: #111;
	background-color: #DDD;
}

/* Mobile navbar toolbar */
.navbar-mobile-controls {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-right: 0.5rem;
}
.navbar-mobile-controls .btn {
    color: rgba(255,255,255,0.85);
    padding: 0.25rem 0.5rem;
}
.navbar-mobile-controls .btn:hover {
    color: #fff;
}

/* =========================================================
   Mobile Navbar Controls
   ========================================================= */
.navbar-mobile-controls {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: space-between;
    padding: 0 8px;
    margin: 0 8px;
}

.mobile-player-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 2px solid #55FFFF;
    border-radius: 6px;
    color: #55FFFF;
    font-size: 16px;
    text-shadow: 0 0 6px #00AAAA;
    box-shadow: 0 0 4px rgba(0, 255, 255, 0.3);
    background: rgba(0, 40, 50, 0.6);
    transition: all 0.2s ease;
}
.btn:hover .mobile-player-icon {
    background: rgba(0, 255, 255, 0.15);
    box-shadow: 0 0 10px rgba(0, 255, 255, 0.5);
}

.mobile-mini-eq {
    width: 32px;
    height: 32px;
    border: 2px solid #55FF55;
    border-radius: 6px;
    background: rgba(0, 40, 20, 0.6);
    box-shadow: 0 0 4px rgba(85, 255, 85, 0.3);
    vertical-align: middle;
    display: block;
}

/* =========================================================
   Visualizer Transport Controls (mobile)
   ========================================================= */
.viz-transport {
    position: absolute;
    top: 56px; /* below navbar */
    left: 0;
    right: 0;
    z-index: 100;
    padding: 12px 16px 16px;
    background: transparent;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.viz-track-row {
    display: flex;
    justify-content: center;
}

.viz-track-btn {
    display: inline-block;
    padding: 8px 20px;
    border: 2px solid #FFAA00;
    border-radius: 8px;
    background: rgba(40, 25, 0, 0.7);
    color: #FFAA00;
    font-family: "Spleen", "VT323", monospace;
    font-size: 14px;
    text-shadow: 0 0 6px rgba(255, 170, 0, 0.6);
    box-shadow: 0 0 8px rgba(255, 170, 0, 0.3), inset 0 0 15px rgba(255, 170, 0, 0.05);
    cursor: pointer;
    max-width: 280px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: all 0.15s ease;
}
.viz-track-btn:hover, .viz-track-btn:active {
    background: rgba(255, 170, 0, 0.15);
    box-shadow: 0 0 12px rgba(255, 170, 0, 0.5);
}

.viz-transport-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.viz-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border: 2px solid #55FF55;
    border-radius: 10px;
    background: rgba(0, 30, 15, 0.7);
    color: #55FF55;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    text-shadow: 0 0 8px #00AA00;
    box-shadow: 0 0 6px rgba(85, 255, 85, 0.3), inset 0 0 20px rgba(85, 255, 85, 0.05);
    transition: all 0.15s ease;
}
.viz-btn:hover, .viz-btn:active {
    background: rgba(85, 255, 85, 0.15);
    box-shadow: 0 0 12px rgba(85, 255, 85, 0.5);
    transform: scale(1.05);
}

.viz-btn-play {
    width: 56px;
    height: 56px;
    font-size: 18px;
    border-color: #FF55FF;
    color: #FF55FF;
    background: rgba(40, 0, 40, 0.7);
    text-shadow: 0 0 8px #AA00AA;
    box-shadow: 0 0 6px rgba(255, 85, 255, 0.3), inset 0 0 20px rgba(255, 85, 255, 0.05);
}
.viz-btn-play:hover, .viz-btn-play:active {
    background: rgba(255, 85, 255, 0.15);
    box-shadow: 0 0 12px rgba(255, 85, 255, 0.5);
}

.viz-volume-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.viz-vol-label {
    color: #55FFFF;
    font-family: "Spleen", "VT323", monospace;
    font-size: 12px;
    text-shadow: 0 0 6px rgba(85, 255, 255, 0.5);
    letter-spacing: 1px;
}

.viz-volume {
    width: 120px;
    height: 8px;
    -webkit-appearance: none;
    appearance: none;
    background: rgba(0, 40, 50, 0.6);
    border: 2px solid #55FFFF;
    border-radius: 6px;
    outline: none;
    box-shadow: 0 0 4px rgba(85, 255, 255, 0.3);
}
.viz-volume::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    background: #55FFFF;
    border-radius: 4px;
    cursor: pointer;
    box-shadow: 0 0 8px #00AAAA;
}
.viz-volume::-moz-range-thumb {
    width: 18px;
    height: 18px;
    background: #55FFFF;
    border-radius: 4px;
    cursor: pointer;
    box-shadow: 0 0 8px #00AAAA;
    border: none;
}

/* Mobile: larger wireframe head */
@media (max-width: 767.98px) {
    .viz-panel .viz-canvas-container {
        /* Scale handled in JS via headScale multiplier */
    }
}

/* ==========================================================================
   Source: root/css/theme-cga.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ===== theme-cga.css — Pure CGA 16-color theme =====
 *
 * Strict CGA palette only. No gradients, no rgba, no glow, no blur.
 * Toggle via [data-theme="cga"] on <html>.
 *
 * CGA palette:
 *   0 #000000 Black          8 #555555 Dark Gray
 *   1 #0000AA Blue           9 #5555FF Bright Blue
 *   2 #00AA00 Green         10 #55FF55 Bright Green
 *   3 #00AAAA Cyan          11 #55FFFF Bright Cyan
 *   4 #AA0000 Red           12 #FF5555 Bright Red
 *   5 #AA00AA Magenta       13 #FF55FF Bright Magenta
 *   6 #AA5500 Brown         14 #FFFF55 Yellow
 *   7 #AAAAAA Light Gray   15 #FFFFFF White
 */

[data-theme="cga"] {
    --bs-body-bg: #555555;
    --bs-body-color: #AAAAAA;
    --bs-primary: #55FFFF;
    --bs-secondary: #AA00AA;
    --bs-success: #00AA00;
    --bs-info: #5555FF;
    --bs-warning: #AA5500;
    --bs-danger: #AA0000;
    --bs-light: #AAAAAA;
    --bs-dark: #555555;
    --fx-glow: none;
    --fx-glow-magenta: none;
    --fx-border: 1px solid #00AAAA;
    --fx-soft-border: 1px solid #555555;
    --fx-card-bg: #000000;
}

html[data-theme="cga"] {
    min-height: 100vh;
    background: #555555 !important;
    background-image: none !important;
}

html[data-theme="cga"] body {
    min-height: 100vh;
    background: #555555 !important;
    background-image: none !important;
}

html[data-theme="cga"] body {
    color: #AAAAAA;
}

[data-theme="cga"] .crt-root::before,
[data-theme="cga"] .crt-root::after {
    display: none !important;
}

[data-theme="cga"] a,
[data-theme="cga"] .link-primary {
    color: #55FFFF;
}

[data-theme="cga"] a:hover,
[data-theme="cga"] .link-primary:hover {
    color: #FFFFFF;
    text-shadow: none;
}

[data-theme="cga"] h1,
[data-theme="cga"] h2,
[data-theme="cga"] h3,
[data-theme="cga"] h4,
[data-theme="cga"] h5,
[data-theme="cga"] h6 {
    color: #FFFFFF;
    text-shadow: none;
}

[data-theme="cga"] .navbar {
    background: #000000 !important;
    border-bottom: 2px solid #55FFFF;
    backdrop-filter: none;
    padding-top: 0.15rem;
    padding-bottom: 0.15rem;
    min-height: 0;
}

[data-theme="cga"] .navbar-brand {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0;
    margin-right: 1rem;
    min-height: 48px;
}

[data-theme="cga"] .brand-icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    image-rendering: pixelated;
}

[data-theme="cga"] .brand-label {
    white-space: pre-line;
    line-height: 1.15;
    font-size: 0.75rem;
    letter-spacing: 0.5px;
}

[data-theme="cga"] .navbar-nav .nav-link {
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
    font-size: 0.85rem;
}

[data-theme="cga"] .navbar-brand {
    color: #FF55FF !important;
}
[data-theme="cga"] .navbar-nav .nav-link {
    color: #55FFFF !important;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: color 0.15s, border-color 0.15s;
}

[data-theme="cga"] .navbar-brand:hover {
    color: #FF55FF !important;
}
[data-theme="cga"] .navbar-nav .nav-link:hover {
    color: #55FF55 !important;
    border-bottom: 2px solid #AA00AA;
    text-shadow: none;
}

[data-theme="cga"] .navbar-nav .nav-link.active {
    color: #55FFFF !important;
}

[data-theme="cga"] .navbar-nav .auth-nav-link,
[data-theme="cga"] .navbar-nav .auth-nav-link:hover,
[data-theme="cga"] .navbar-nav .auth-nav-link:focus,
[data-theme="cga"] .navbar-nav .auth-nav-link.show {
    color: #FF55FF !important;
}

[data-theme="cga"] .navbar-nav .auth-nav-link.dropdown-toggle::after {
    border-top-color: #55FF55;
}

[data-theme="cga"] .card {
    background: #000000;
    border: 1px solid #00AAAA;
    box-shadow: none;
}

[data-theme="cga"] .card .card-header {
    color: #FFFF55;
    background: #0000AA;
    border-bottom: 1px solid #00AAAA;
}

[data-theme="cga"] .btn {
    box-shadow: none;
    text-shadow: none;
}

[data-theme="cga"] .btn-primary {
    color: #000000;
    background: #55FFFF;
    border-color: #00AAAA;
}

[data-theme="cga"] .btn-primary:hover {
    background: #FFFFFF;
    border-color: #55FFFF;
    filter: none;
}

[data-theme="cga"] .btn-secondary {
    color: #000000;
    background: #FF55FF;
    border-color: #AA00AA;
}

[data-theme="cga"] .btn-secondary:hover {
    background: #FFFFFF;
    border-color: #FF55FF;
}

[data-theme="cga"] .btn-outline-primary {
    color: #55FFFF;
    border-color: #55FFFF;
    background: transparent;
}

[data-theme="cga"] .btn-outline-primary:hover {
    color: #000000;
    background: #55FFFF;
}

[data-theme="cga"] .form-control,
[data-theme="cga"] .form-select {
    color: #FFFFFF;
    background: #000000;
    border: 1px solid #00AAAA;
}

[data-theme="cga"] .form-control::placeholder,
[data-theme="cga"] .form-select::placeholder,
[data-theme="cga"] input::placeholder,
[data-theme="cga"] textarea::placeholder {
    color: #AAAAAA;
    opacity: 1;
}

[data-theme="cga"] .form-control::-webkit-input-placeholder,
[data-theme="cga"] .form-select::-webkit-input-placeholder,
[data-theme="cga"] input::-webkit-input-placeholder,
[data-theme="cga"] textarea::-webkit-input-placeholder {
    color: #AAAAAA;
}

[data-theme="cga"] .form-control::-moz-placeholder,
[data-theme="cga"] .form-select::-moz-placeholder,
[data-theme="cga"] input::-moz-placeholder,
[data-theme="cga"] textarea::-moz-placeholder {
    color: #AAAAAA;
    opacity: 1;
}

[data-theme="cga"] .form-control:-ms-input-placeholder,
[data-theme="cga"] .form-select:-ms-input-placeholder,
[data-theme="cga"] input:-ms-input-placeholder,
[data-theme="cga"] textarea:-ms-input-placeholder {
    color: #AAAAAA;
}

[data-theme="cga"] .form-control:focus,
[data-theme="cga"] .form-select:focus {
    border-color: #55FFFF;
    box-shadow: none;
    outline: 2px solid #55FFFF;
}

[data-theme="cga"] .table {
    --bs-table-color: #AAAAAA;
    --bs-table-bg: transparent;
    color: #AAAAAA;
    border-color: #555555;
}

[data-theme="cga"] .table thead th {
    color: #FFFF55;
    background: #0000AA;
    border-bottom: 2px solid #00AAAA;
}

[data-theme="cga"] .table-striped tbody tr:nth-of-type(odd) {
    background-color: #000000;
}

[data-theme="cga"] .table-striped tbody tr:nth-of-type(even) {
    background-color: #0000AA;
}

[data-theme="cga"] .table td,
[data-theme="cga"] .table th,
[data-theme="cga"] .table > :not(caption) > * > * {
    border-color: #555555;
    --bs-table-color: #AAAAAA;
    color: #AAAAAA;
}

[data-theme="cga"] .badge.bg-primary {
    background: #00AAAA !important;
    color: #FFFFFF;
}

[data-theme="cga"] .badge.bg-secondary {
    background: #AA00AA !important;
    color: #FFFFFF;
}

[data-theme="cga"] .alert {
    border-width: 2px;
    background: #000000;
}

[data-theme="cga"] .alert-primary {
    border-color: #55FFFF;
    color: #55FFFF;
    background: #000000;
}

[data-theme="cga"] .alert-danger {
    border-color: #FF5555;
    color: #FF5555;
    background: #000000;
}

[data-theme="cga"] .alert-success {
    border-color: #55FF55;
    color: #55FF55;
    background: #000000;
}

[data-theme="cga"] .alert-warning {
    border-color: #FFFF55;
    color: #FFFF55;
    background: #000000;
}

[data-theme="cga"] pre.ansi,
[data-theme="cga"] .terminal {
    color: #AAAAAA;
    background: #000000;
    border: 1px solid #00AAAA;
    box-shadow: none;
}

[data-theme="cga"] hr {
    border-top: 1px solid #555555;
}

[data-theme="cga"] #sidebar {
    opacity: 1;
    background: transparent !important;
}

[data-theme="cga"] #sidebar .list-group-item.sidebar {
    background: transparent !important;
    border: none !important;
    color: #AAAAAA;
    margin: 0 !important;
    padding: 0 !important;
}
[data-theme="cga"] #sidebar .list-group-item.sidebar + .list-group-item.sidebar {
    margin-top: 10px !important;
}
[data-theme="cga"] #sidebar .card {
    margin: 0 !important;
}

[data-theme="cga"] .dropdown-menu {
    background: #000000;
    border: 1px solid #00AAAA;
}

[data-theme="cga"] .dropdown-item {
    color: #AAAAAA;
}

[data-theme="cga"] .dropdown-item:hover {
    color: #FFFFFF;
    background: #0000AA;
}

[data-theme="cga"] .login-panel-menu {
    min-width: 280px;
}

[data-theme="cga"] .login-signup-panel {
    margin-top: 0.85rem;
    padding-top: 0.8rem;
    border-top: 1px solid #00AAAA;
}

[data-theme="cga"] .login-signup-copy {
    color: #FFFF55;
    font-size: 0.8rem;
    line-height: 1.45;
    margin-bottom: 0.55rem;
}

[data-theme="cga"] .login-signup-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
    background: #FF55FF !important;
    border-color: #FF55FF !important;
    color: #000000 !important;
    text-decoration: none;
}

[data-theme="cga"] .login-signup-btn:hover,
[data-theme="cga"] .login-signup-btn:focus {
    background: #FF55FF !important;
    border-color: #FF55FF !important;
    color: #000000 !important;
    text-decoration: none;
}

/* Forgot-password inline flow */
[data-theme="cga"] .forgot-pw-section {
    margin-top: 0.65rem;
    padding-top: 0.55rem;
    border-top: 1px dashed #555555;
}

[data-theme="cga"] .forgot-pw-link {
    color: #55FFFF;
    font-size: 0.78rem;
    text-decoration: underline;
    cursor: pointer;
}

[data-theme="cga"] .forgot-pw-link:hover {
    color: #FFFF55;
}

[data-theme="cga"] .forgot-pw-result {
    margin-top: 0.5rem;
    font-size: 0.78rem;
    line-height: 1.4;
    color: #55FF55;
}

[data-theme="cga"] .forgot-pw-form .form-control {
    background: #000000;
    color: #55FFFF;
    border-color: #00AAAA;
}

[data-theme="cga"] .forgot-pw-form .form-control::placeholder {
    color: #00AAAA;
}

[data-theme="cga"] .forgot-pw-form .form-control.is-invalid {
    border-color: #FF5555;
}

[data-theme="cga"] .forgot-pw-form .btn-outline-info {
    color: #55FFFF;
    border-color: #00AAAA;
}

[data-theme="cga"] .forgot-pw-form .btn-outline-info:hover {
    background: #00AAAA;
    color: #000000;
}

[data-theme="cga"] .modal-content {
    background: #000000;
    border: 2px solid #55FFFF;
}

[data-theme="cga"] .modal-header {
    background: #0000AA;
    border-bottom: 1px solid #00AAAA;
    color: #FFFFFF;
}

[data-theme="cga"] * {
    scrollbar-color: #AA00AA #000000;
    scrollbar-width: thin;
}

[data-theme="cga"] ::-webkit-scrollbar {
    width: 8px;
    background: #000000;
}

[data-theme="cga"] ::-webkit-scrollbar-thumb {
    background: #AA00AA;
}

[data-theme="cga"] ::-webkit-scrollbar-thumb:hover {
    background: #FF55FF;
}

[data-theme="cga"] ::selection {
    background: #0000AA;
    color: #FFFFFF;
}

[data-theme="cga"] .list-group-item {
    background: #000000;
    border-color: #555555;
    color: #AAAAAA;
}

[data-theme="cga"] .terminal-panel {
    border-bottom: 2px solid #00AAAA;
}

[data-theme="cga"] .text-muted {
    color: #AAAAAA !important;
}

[data-theme="cga"] strong,
[data-theme="cga"] b {
    color: #FFFFFF;
}

[data-theme="cga"] .border-cga {
    border: 2px solid #55FFFF;
    box-shadow: none;
}

[data-theme="cga"] .border-cga::before,
[data-theme="cga"] .border-cga::after {
    display: none;
}

/* ---------- BS3 legacy class overrides ---------- */

[data-theme="cga"] .panel {
    background: #000000;
    border: 1px solid #00AAAA;
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 1em;
}

[data-theme="cga"] .panel-heading {
    background: #0000AA;
    color: #FFFF55;
    border-bottom: 1px solid #00AAAA;
    padding: 8px 15px;
}

[data-theme="cga"] .panel-heading h1,
[data-theme="cga"] .panel-heading h2,
[data-theme="cga"] .panel-heading h3,
[data-theme="cga"] .panel-heading h4 {
    color: #FFFF55;
    margin: 0;
}

[data-theme="cga"] .panel-body {
    background: #000000;
    color: #AAAAAA;
    padding: 15px;
}

[data-theme="cga"] .panel-body label {
    color: #FFFFFF;
}

[data-theme="cga"] .panel-footer {
    background: #0000AA;
    color: #AAAAAA;
    border-top: 1px solid #00AAAA;
    padding: 8px 15px;
}

[data-theme="cga"] .well {
    background: #000000;
    border: 1px solid #555555;
    color: #AAAAAA;
    box-shadow: none;
    border-radius: 0;
}

[data-theme="cga"] .btn-default {
    color: #FFFFFF;
    background: #555555;
    border-color: #AAAAAA;
}

[data-theme="cga"] .btn-default:hover,
[data-theme="cga"] .btn-default:focus {
    color: #000000;
    background: #AAAAAA;
    border-color: #FFFFFF;
}

[data-theme="cga"] .btn-default.active,
[data-theme="cga"] .btn-default:active {
    color: #000000;
    background: #55FFFF;
    border-color: #00AAAA;
}

/* Sort button group — active state */
[data-theme="cga"] .btn-group .btn-default.active {
    color: #000000;
    background: #55FFFF;
    border-color: #00AAAA;
}

[data-theme="cga"] .btn-default .glyphicon {
    color: inherit;
}

/* Vote buttons */
[data-theme="cga"] .btn-uv.btn-default {
    color: #55FF55;
    background: transparent;
    border-color: #555555;
}

[data-theme="cga"] .btn-uv.btn-default:hover {
    background: #00AA00;
    color: #FFFFFF;
}

[data-theme="cga"] .btn-dv.btn-default {
    color: #FF5555;
    background: transparent;
    border-color: #555555;
}

[data-theme="cga"] .btn-dv.btn-default:hover {
    background: #AA0000;
    color: #FFFFFF;
}

/* ---------- Breadcrumb ---------- */

[data-theme="cga"] .breadcrumb {
    background: #0000AA;
    border: 1px solid #555555;
    border-radius: 0;
}

[data-theme="cga"] .breadcrumb > li + li:before {
    content: " > ";
    color: #FF55FF;
    padding: 0 3px;
}

[data-theme="cga"] .breadcrumb a {
    color: #55FFFF;
}

[data-theme="cga"] .breadcrumb a:hover {
    color: #FFFFFF;
}

[data-theme="cga"] .breadcrumb > .active,
[data-theme="cga"] .breadcrumb-item.active {
    color: #AAAAAA;
}

/* ---------- Misc light-bg leaks ---------- */

[data-theme="cga"] .bg-light {
    background: #000000 !important;
    color: #AAAAAA !important;
}

[data-theme="cga"] .bg-white {
    background: #000000 !important;
}

[data-theme="cga"] .bg-body {
    background: #000000 !important;
}

[data-theme="cga"] .label-default {
    background: #555555;
    color: #FFFFFF;
}

[data-theme="cga"] .text-secondary {
    color: #AAAAAA !important;
}

[data-theme="cga"] .text-dark {
    color: #AAAAAA !important;
}

[data-theme="cga"] code {
    color: #FF55FF;
    background: #000000;
}

[data-theme="cga"] .alert-info {
    border-color: #FFFF55;
    color: #FFFF55;
    background: #000000;
}

[data-theme="cga"] .control-label {
    color: #FFFFFF;
}

[data-theme="cga"] p {
    color: #AAAAAA;
}

/* ==========================================================================
   Source: root/css/spa.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* spa.css - SPA-specific styles for Synchronet webv4 */

/* Push content below fixed navbar */
.spa-container {
    padding-top: 70px;
}

/* Navbar must sit above the terminal overlay */
.navbar.fixed-top {
    z-index: 1045 !important;
}

/* Terminal overlay - fills viewport below navbar */
.terminal-panel {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    background: #000;
    display: flex;
    flex-direction: column;
    padding-top: var(--navbar-h, 56px); /* measured by JS */
    opacity: 1;
    pointer-events: auto;
}

.terminal-panel.is-hidden {
    opacity: 0;
    pointer-events: none;
}

/* fTelnet container fills remaining space - block layout so fTelnet can measure */
.terminal-panel .fTelnetContainer {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    position: relative;
    width: 100%;
}

/* fTelnet internal container — fill available space so SetFont measures correctly.
   JS clears fTelnet's inline width/height before calling SetFont. */
.terminal-panel .fTelnetClientContainer {
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

/* Canvas block display */
.terminal-panel canvas {
    display: block;
}

/* ---- Hide ALL fTelnet chrome globally ---- */
/* Some elements (menu buttons) attach to document.body, not our container */
.fTelnetStatusBar { display: none !important; }
.fTelnetConnectButton { display: none !important; }
.fTelnetKeyboardWrapper { display: none !important; }
.fTelnetFocusWarning,
.fTelnetFocusWarningBar { display: none !important; }
.fTelnetScrollback { display: none !important; }
.fTelnetMenuButton,
.fTelnetMenuButtons { display: none !important; }
.fTelnetInitMessage { display: none !important; }

/* Body scroll lock when terminal is open */
body.terminal-open {
    overflow: hidden;
}

/* Sidebar styling */
#sidebar .list-group-item.sidebar {
    padding: 10px;
    border-left: 0;
    border-right: 0;
}

#sidebar .list-group-item.sidebar:first-child {
    border-top: 0;
}

/* Navigation transitions */
#content {
    min-height: 200px;
    opacity: 1;
    transition: opacity 0.15s ease;
}

#content.spa-loading {
    opacity: 0.5;
}

/* BS5 navbar tweaks */
.navbar .badge-unread {
    font-size: 1.65em;
    vertical-align: super;
}

/* Terminal button positioning in navbar */
.navbar-terminal-btn {
    flex-shrink: 0;
    margin-left: 6px;
    margin-right: 4px;
}

/* Terminal button — must not inflate navbar height */
/* =========================================================
 *  Terminal "CRT + Modem" button — no button chrome
 *
 *  3 visual states driven by JS classes on #btn-terminal:
 *    (default)                -> "ENTER"   amber text, LEDs all dim red
 *    .crt-visible             -> "CRT ON"  amber text, LEDs dim pulse
 *    .crt-visible.modem-active-> "ONLINE"  green text, LEDs bright + fast
 * ========================================================= */
#btn-terminal {
    background: none;
    border: none;
    outline: none;
    padding: 2px 4px;
    margin: 0 2px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    position: relative;
    vertical-align: middle;
}

/* Mini CRT screen */
.crt-screen {
    width: 64px;
    height: 24px;
    background: #0a0a0a;
    border-radius: 3px;
    border: 1.5px solid #333;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.8);
    transition: box-shadow 0.4s, border-color 0.4s;
}
.crt-scanline {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: repeating-linear-gradient(
        0deg, transparent, transparent 1px,
        rgba(0,0,0,0.15) 1px, rgba(0,0,0,0.15) 2px
    );
    pointer-events: none;
    z-index: 1;
}

/* Default CRT text — amber "ENTER", subtle flicker */
.crt-text {
    font-family: 'VT323', monospace;
    font-size: 14px;
    color: #AA5500;
    letter-spacing: 1px;
    text-transform: uppercase;
    z-index: 2;
    position: relative;
    text-shadow: 0 0 4px rgba(170, 85, 0, 0.4);
    animation: crt-flicker 4s ease-in-out infinite;
    transition: color 0.4s, text-shadow 0.4s;
}
@keyframes crt-flicker {
    0%, 100% { opacity: 0.9; }
    3%       { opacity: 0.6; }
    6%       { opacity: 0.95; }
    50%      { opacity: 1; }
    92%      { opacity: 0.85; }
    95%      { opacity: 0.5; }
    97%      { opacity: 1; }
}

/* Hover: brighten the CRT glow */
#btn-terminal:hover .crt-screen {
    box-shadow: inset 0 0 10px rgba(170, 85, 0, 0.2), 0 0 8px rgba(170, 85, 0, 0.25);
    border-color: #553300;
}
#btn-terminal:hover .crt-text {
    color: #FF8800;
    text-shadow: 0 0 8px rgba(255, 136, 0, 0.6);
}

/* Horizontal modem faceplate */
.modem-strip {
    display: flex;
    gap: 6px;
    padding: 0 2px;
}
.mled {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
}
.mled-light {
    width: 6px;
    height: 3px;
    border-radius: 1px;
    display: block;
    transition: background 0.3s, box-shadow 0.3s;
}
.mled-label {
    font-family: 'VT323', monospace;
    font-size: 7px;
    color: #555;
    line-height: 1;
    letter-spacing: 0.5px;
}

/* === DEFAULT STATE: disconnected + hidden ===
   All LEDs dim red / off — modem is idle */
.mled-cd {
    background: #551111;
    box-shadow: none;
    opacity: 0.4;
    animation: none;
}
.mled-rx {
    background: #551111;
    box-shadow: none;
    opacity: 0.4;
    animation: none;
}
.mled-tx {
    background: #551111;
    box-shadow: none;
    opacity: 0.4;
    animation: none;
}

/* === VISIBLE STATE: CRT on, not yet connected ===
   "CRT ON" amber, LEDs start slow pulse  */
#btn-terminal.crt-visible .crt-text {
    color: #FFAA00;
    text-shadow: 0 0 5px rgba(255, 170, 0, 0.5);
}
#btn-terminal.crt-visible .crt-screen {
    box-shadow:
        inset 0 0 8px rgba(255, 170, 0, 0.12),
        0 0 5px rgba(255, 170, 0, 0.12);
    border-color: #553300;
}
#btn-terminal.crt-visible .mled-cd {
    background: #AA5500;
    box-shadow: 0 0 2px #AA5500;
    opacity: 1;
    animation: mled-cd-wait 2.5s ease-in-out infinite;
}
#btn-terminal.crt-visible .mled-rx {
    background: #FF5555;
    box-shadow: 0 0 2px #FF5555;
    opacity: 1;
    animation: mled-idle-pulse 1.8s step-end infinite;
}
#btn-terminal.crt-visible .mled-tx {
    background: #55FF55;
    box-shadow: 0 0 2px #55FF55;
    opacity: 1;
    animation: mled-idle-pulse 1.4s step-end infinite 0.3s;
}
@keyframes mled-cd-wait {
    0%, 100% { opacity: 0.25; }
    50%      { opacity: 0.7; }
}
@keyframes mled-idle-pulse {
    0%   { opacity: 0.1; }
    20%  { opacity: 0.45; }
    35%  { opacity: 0.1; }
    60%  { opacity: 0.35; }
    75%  { opacity: 0.1; }
}

/* Hover when visible */
#btn-terminal.crt-visible:hover .crt-screen {
    box-shadow:
        inset 0 0 10px rgba(255, 170, 0, 0.2),
        0 0 10px rgba(255, 170, 0, 0.3);
}

/* === CONNECTED STATE: online ===
   "ONLINE" green, LEDs bright and fast, CD solid */
#btn-terminal.modem-active .crt-text {
    color: #55FF55;
    text-shadow: 0 0 6px rgba(85, 255, 85, 0.7);
}
#btn-terminal.modem-active .crt-screen {
    box-shadow:
        inset 0 0 10px rgba(85, 255, 85, 0.15),
        0 0 8px rgba(85, 255, 85, 0.2);
    border-color: #224422;
}
#btn-terminal.modem-active .mled-cd {
    background: #FFFF55;
    box-shadow: 0 0 5px #FFFF55;
    opacity: 1;
    animation: none;
}
#btn-terminal.modem-active .mled-rx {
    background: #FF5555;
    box-shadow: 0 0 4px #FF5555;
    opacity: 1;
    animation: mled-rx-active 0.4s step-end infinite;
}
#btn-terminal.modem-active .mled-tx {
    background: #55FF55;
    box-shadow: 0 0 4px #55FF55;
    opacity: 1;
    animation: mled-tx-active 0.3s step-end infinite;
}
@keyframes mled-rx-active {
    0%   { opacity: 0.15; }
    25%  { opacity: 1; }
    50%  { opacity: 0.15; }
    75%  { opacity: 0.85; }
}
@keyframes mled-tx-active {
    0%   { opacity: 1; }
    30%  { opacity: 0.15; }
    55%  { opacity: 0.95; }
    80%  { opacity: 0.15; }
}

/* Hover when connected */
#btn-terminal.modem-active:hover .crt-screen {
    box-shadow:
        inset 0 0 12px rgba(85, 255, 85, 0.25),
        0 0 14px rgba(85, 255, 85, 0.35);
}

/* Dark mode support */
[data-bs-theme="dark"] .terminal-panel {
    /* already black, no border needed */
}

/* Mobile: terminal full-width */
@media (max-width: 767.98px) {
    .terminal-panel {
        padding-top: var(--navbar-h, 48px);
    }

    .spa-container {
        padding-top: 60px;
    }

    #sidebar {
        margin-top: 1rem;
    }
}

/* Override some BS3 classes that may appear in legacy page content */
.panel { border: 1px solid #dee2e6; border-radius: 0.375rem; margin-bottom: 1rem; }
.panel-heading { padding: 0.75rem 1.25rem; background-color: #f8f9fa; border-bottom: 1px solid #dee2e6; border-radius: 0.375rem 0.375rem 0 0; }
.panel-body { padding: 1.25rem; }
.panel-footer { padding: 0.75rem 1.25rem; background-color: #f8f9fa; border-top: 1px solid #dee2e6; border-radius: 0 0 0.375rem 0.375rem; }
.panel-default { }
.panel-primary .panel-heading { background-color: #0d6efd; color: #fff; border-color: #0d6efd; }
.well { padding: 1.25rem; background-color: #f8f9fa; border: 1px solid #dee2e6; border-radius: 0.375rem; margin-bottom: 1rem; }
.btn-default { color: #333; background-color: #fff; border-color: #ccc; }
.btn-default:hover { background-color: #e6e6e6; border-color: #adadad; }
.label { display: inline-block; padding: 0.25em 0.4em; font-size: 75%; font-weight: 700; border-radius: 0.25rem; }
.label-default { background-color: #6c757d; color: #fff; }
.label-primary { background-color: #0d6efd; color: #fff; }
.label-success { background-color: #198754; color: #fff; }
.label-info { background-color: #0dcaf0; color: #000; }
.label-warning { background-color: #ffc107; color: #000; }
.label-danger { background-color: #dc3545; color: #fff; }
.col-xs-12 { width: 100%; }
.col-xs-6 { width: 50%; }
.pull-left { float: left !important; }
.pull-right { float: right !important; }
.center-block { display: block; margin-left: auto; margin-right: auto; }
.visible-xs { display: none !important; }
@media (max-width: 767.98px) { .visible-xs { display: block !important; } }
.text-center { text-align: center; }

/* Who's Online avatar rows */
#nodelist-table td,
#nodelist-table th {
    vertical-align: middle;
    min-height: 48px;
    height: 48px;
}

.avatar-inline {
    display: inline-block;
    vertical-align: middle;
    width: 40px;
    height: 40px;
    margin-right: 4px;
    overflow: hidden;
    position: relative;
}

.avatar-inline img,
.avatar-inline canvas {
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: pixelated;
}

/* ---------- Games page ---------- */

#games-page {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

#games-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0.6rem;
    margin-bottom: 0 !important;
}

.games-toolbar-card,
.games-stats-card,
.game-row,
.games-empty-card {
    background: #000000;
    border: 1px solid #5555FF;
    border-radius: 10px;
}

.games-toolbar-card {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.55rem;
    min-height: 54px;
}

.games-toolbar-card .btn-group {
    display: flex;
    flex-wrap: wrap;
}

#games-sort .btn,
#games-month-nav .btn,
#games-user-filter {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#games-user-filter {
    white-space: nowrap;
}

.games-stats-card {
    padding: 0.7rem 1rem;
}

#games-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.games-summary-item {
    display: inline-flex;
    align-items: baseline;
    gap: 0.35rem;
}

.games-summary-value {
    color: #FFFFFF;
    margin: 0;
}

.games-summary-label {
    color: #AAAAAA;
}

.games-card-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.games-empty-card {
    padding: 1rem;
    color: #AAAAAA;
}

.game-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    padding: 0.95rem 1rem;
    transition: border-color 0.15s ease, transform 0.15s ease;
}

.game-row:hover {
    border-color: #55FFFF;
    transform: translateY(-1px);
}

.game-card-media {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.game-rank {
    color: #FFFF55;
    font-size: 1.55rem;
    font-weight: bold;
    line-height: 1;
    min-width: 2.8em;
    text-align: right;
}

.game-icon {
    width: 96px;
    height: 96px;
    overflow: hidden;
    background: #000000;
    border: 1px solid #555555;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.game-icon-img {
    width: 96px;
    height: 96px;
    image-rendering: pixelated;
    display: block;
}

.game-icon-placeholder {
    width: 96px;
    height: 96px;
    background: #111111;
    opacity: 0.5;
}

.game-info {
    min-width: 0;
}

.game-title-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.34rem;
}

.game-title {
    font-size: 1.32rem;
    color: #AAAAAA;
    line-height: 1.05;
}

.game-section {
    color: #AAAAAA;
    font-size: 1rem;
    line-height: 1.05;
}

.game-stats-line {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    font-size: 1.04rem;
    line-height: 1.22;
}

.game-stat-label {
    opacity: 0.6;
    font-size: 0.75rem;
    text-transform: uppercase;
    margin-right: 0.2em;
}

.game-stat-time  { color: #55FF55; }
.game-stat-launches { color: #55FFFF; }
.game-stat-recent { color: #FFFF55; }
.game-stat-players { color: #FF55FF; }

.game-top-players {
    font-size: 0.98rem;
    color: #AAAAAA;
    margin-top: 0.34rem;
    line-height: 1.28;
}

.game-top-players .text-muted {
    color: #AAAAAA !important;
}

.game-action {
    display: flex;
    align-items: center;
    justify-content: center;
}

.game-launch-btn {
    align-self: center;
    min-width: 5rem;
    white-space: nowrap;
    font-size: 1rem;
    line-height: 1.1;
    padding: 0.48rem 1rem;
}

.game-launch-btn.is-login-cta,
.game-launch-btn.is-login-cta:disabled {
    color: #FF5555;
    border-color: #FF5555;
    font-weight: bold;
    opacity: 1;
}

.game-user-dropdown {
    max-height: 300px;
    overflow-y: auto;
    z-index: 1050;
    background: #000000;
    border: 1px solid #00AAAA;
    border-radius: 8px;
    padding: 0.3rem 0;
}

.game-user-dropdown .avatar-inline {
    width: 24px;
    height: 24px;
}

/* Small screen adjustments */
@media (max-width: 576px) {
    .games-toolbar-card {
        width: 100%;
        justify-content: center;
    }
    .game-row {
        grid-template-columns: 1fr;
        align-items: stretch;
    }
    .game-card-media {
        align-self: flex-start;
    }
    .game-icon {
        width: 64px;
        height: 64px;
    }
    .game-icon-img {
        width: 64px;
        height: 64px;
    }
    .game-icon-placeholder {
        width: 64px;
        height: 64px;
    }
    .game-action {
        justify-content: stretch;
    }
    .game-launch-btn {
        width: 100%;
    }
}

/* ---- BIN icons (reusable ANSI art icon system) ---- */
.bin-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}
.bin-icon-img {
    height: 24px;
    width: auto;
    image-rendering: pixelated;
    display: block;
}
/* Size variants */
.bin-icon-sm .bin-icon-img { height: 16px; }
.bin-icon-lg .bin-icon-img { height: 32px; }
.bin-icon-xl .bin-icon-img { height: 48px; }

/* Navbar context — fill to nav item height */
.navbar .nav-link {
    display: flex;
    align-items: center;
    min-height: 48px;
}
.navbar .bin-icon {
    margin-right: 0.15em;
}
.navbar .bin-icon-img {
    height: 32px;
}

/* Dropdown menu items */
.dropdown-item .bin-icon {
    margin-right: 0.3em;
}
.dropdown-item .bin-icon-img {
    height: 24px;
}

/* Forum sort bar context — match text line height */
#forum-sort-controls .bin-icon {
    margin-right: 0.2em;
}
#forum-sort-controls .bin-icon-img {
    height: 24px;
}

/* Icon-only action buttons — fill the button */
.btn.icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    font-size: 1.15rem;
    margin-right: 4px;
}
.btn.icon .bin-icon-img {
    height: 28px;
}

/* Vote buttons with count — icon beside text */
.btn-uv .bin-icon-img,
.btn-dv .bin-icon-img {
    height: 24px;
}

/* Breadcrumb context */
.breadcrumb .bin-icon-img {
    height: 20px;
}

/* ---- Forum icons ---- */
.forum-item-with-icon {
    display: flex !important;
    align-items: flex-start;
    gap: 12px;
}
.forum-icon {
    width: 96px;
    min-width: 96px;
    height: 96px;
    overflow: hidden;
    background: #000;
    border: 1px solid rgba(128, 128, 128, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.forum-icon-img {
    width: 96px;
    height: 96px;
    image-rendering: pixelated;
    display: block;
}
.forum-item-content {
    flex: 1;
    min-width: 0;
}
.forum-item-content h3,
.forum-item-content h4 {
    margin-top: 0;
}
/* Breadcrumb link: inline-flex keeps icon+text on one line */
.breadcrumb li a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* Breadcrumb icons */
.bc-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    overflow: hidden;
    vertical-align: middle;
    flex-shrink: 0;
}
.bc-icon .forum-icon-img {
    width: 20px;
    height: 20px;
}
/* CGA theme overrides */
[data-theme="cga"] .forum-icon {
    border-color: var(--cga-dark-gray);
}
/* Responsive */
@media (max-width: 576px) {
    .forum-icon {
        width: 64px;
        min-width: 64px;
        height: 64px;
    }
    .forum-icon-img {
        width: 64px;
        height: 64px;
    }
    .bc-icon {
        width: 16px;
        height: 16px;
    }
    .bc-icon .forum-icon-img {
        width: 16px;
        height: 16px;
    }
}

/* ============ Chat ============ */

.chat-container {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 160px);
    min-height: 300px;
}

.chat-messages {
    flex: 1;
    overflow-y: auto;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: var(--bs-body-bg, #fff);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0;
}

/* Message groups */
.chat-msg-group {
    display: flex;
    gap: 8px;
    max-width: 90%;
    margin-bottom: 6px;
}
.chat-msg-group-other {
    align-self: flex-start;
}
.chat-msg-group-self {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.chat-msg-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* Avatar */
.chat-avatar {
    flex-shrink: 0;
    align-self: flex-start;
    width: 60px;
    border-radius: 4px;
    overflow: hidden;
    background: #111;
}
.chat-avatar img {
    width: 100%;
    height: auto;
    image-rendering: pixelated;
    display: block;
}
.chat-avatar-placeholder {
    color: #aaa;
    font-size: 18px;
    font-weight: bold;
    line-height: 72px;
    text-align: center;
    display: block;
    width: 100%;
}

/* Sender name */
.chat-sender {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--bs-secondary-color, #6c757d);
    padding: 0 4px;
    margin-top: 4px;
}

/* Bubbles */
.chat-bubble {
    padding: 6px 10px;
    border-radius: 0;
    word-break: break-word;
    position: relative;
}
.chat-bubble-other {
    background: var(--bs-tertiary-bg, #e9ecef);
    color: var(--bs-body-color, #212529);
    border-bottom-left-radius: 4px;
}
.chat-bubble-self {
    background: #0d6efd;
    color: #fff;
    border-bottom-right-radius: 4px;
}
.chat-bubble-self a {
    color: #cfe2ff;
}

/* Timestamp */
.chat-timestamp {
    font-size: 0.65rem;
    color: inherit;
    opacity: 0.6;
    text-align: right;
    margin-top: 2px;
    margin-left: 6px;
}

/* System messages (join/part) */
.chat-system-msg {
    text-align: center;
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
    padding: 4px 0;
    font-style: italic;
}

/* Chat text */
.chat-text {
    line-height: 1.4;
}
.chat-text a {
    text-decoration: underline;
}

/* Input area */
.chat-input-area {
    padding: 12px;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-top: none;
    border-radius: 0 0 8px 8px;
    background: var(--bs-body-bg, #fff);
}

/* ============ Chat Toasts ============ */

#chat-toasts {
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 1090;
    display: flex;
    flex-direction: column-reverse;
    gap: 8px;
    max-width: 360px;
    pointer-events: none;
}

.chat-toast {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    background: var(--bs-body-bg, #fff);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    pointer-events: auto;
    cursor: pointer;
    transition: opacity 0.3s, transform 0.3s;
    opacity: 1;
    transform: translateX(0);
}

.chat-toast-enter {
    opacity: 0;
    transform: translateX(-30px);
}
.chat-toast-exit {
    opacity: 0;
    transform: translateX(-30px);
}

.chat-toast-body {
    display: flex;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.chat-toast-avatar {
    width: 48px;
    border-radius: 4px;
    overflow: hidden;
    background: #111;
    flex-shrink: 0;
}
.chat-toast-avatar img {
    width: 48px;
    height: 58px;
    image-rendering: pixelated;
}

.chat-toast-content {
    flex: 1;
    min-width: 0;
}

.chat-toast-sender {
    font-weight: 600;
    font-size: 0.85rem;
    margin-bottom: 2px;
}

.chat-toast-text {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    word-break: break-word;
}

.chat-toast-close {
    background: none;
    border: none;
    font-size: 1.2rem;
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
    padding: 0 4px;
    line-height: 1;
    align-self: flex-start;
    pointer-events: auto;
}
.chat-toast-close:hover {
    color: var(--bs-body-color, #212529);
}

/* Chat badge in navbar */
#badge-chat-unread {
    font-size: 0.65rem;
    vertical-align: top;
}

/* ---- CGA theme overrides ---- */
[data-theme="cga"] .chat-messages,
.cga .chat-messages {
    background: var(--cga-black);
    border-color: var(--cga-dark-gray);
    border-radius: 0;
}
[data-theme="cga"] .chat-bubble-other,
.cga .chat-bubble-other {
    background: transparent;
    color: var(--cga-white);
    border: 1px solid var(--cga-bright-cyan);
    border-radius: 0;
}
[data-theme="cga"] .chat-bubble-self,
.cga .chat-bubble-self {
    background: transparent;
    color: var(--cga-light-gray);
    border: 1px solid var(--cga-bright-blue);
    border-radius: 0;
}
[data-theme="cga"] .chat-input-area,
.cga .chat-input-area {
    background: var(--cga-black);
    border-color: var(--cga-dark-gray);
}
[data-theme="cga"] .chat-input-area input,
.cga .chat-input-area input,
[data-theme="cga"] .chat-input-area textarea,
.cga .chat-input-area textarea {
    background: var(--cga-black);
    color: var(--cga-light-gray);
    border-color: var(--cga-dark-gray);
}
[data-theme="cga"] .chat-system-msg,
.cga .chat-system-msg {
    color: var(--cga-bright-cyan);
}
[data-theme="cga"] .chat-sender,
.cga .chat-sender {
    color: var(--cga-bright-magenta);
    font-weight: 700;
}
[data-theme="cga"] .chat-timestamp,
.cga .chat-timestamp {
    color: var(--cga-dark-gray);
}
[data-theme="cga"] .chat-toast,
.cga .chat-toast {
    background: var(--cga-black);
    color: var(--cga-bright-cyan);
    border-color: var(--cga-dark-gray);
}
[data-theme="cga"] .chat-toast-text,
.cga .chat-toast-text {
    color: var(--cga-bright-magenta);
}

/* ---- Chat Users Panel ---- */
.chat-users-panel {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0;
    margin-bottom: .75rem;
    max-height: 320px;
    overflow-y: auto;
    background: var(--bs-body-bg, #fff);
}
.chat-users-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem .75rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    font-weight: 600;
    font-size: .9rem;
}
.chat-users-panel-header .btn-close {
    font-size: .65rem;
}
.chat-users-list {
    padding: .25rem 0;
}
.chat-user-item {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .35rem .75rem;
}
.chat-user-item:hover {
    background: var(--bs-tertiary-bg, rgba(0,0,0,.03));
}
.chat-user-avatar {
    width: 40px;
    flex-shrink: 0;
    border-radius: 2px;
    overflow: hidden;
    background: #000;
}
.chat-user-avatar img,
.chat-user-avatar canvas {
    width: 40px;
    height: 48px;
    display: block;
}
.chat-user-info {
    min-width: 0;
}
.chat-user-nick {
    font-weight: 500;
    font-size: .85rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.chat-user-system {
    font-size: .7rem;
    color: var(--bs-secondary-color, #6c757d);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* CGA theme overrides for users panel */
[data-theme="cga"] .chat-users-panel,
.cga .chat-users-panel {
    background: #000;
    border-color: var(--cga-dark-gray);
}
[data-theme="cga"] .chat-users-panel-header,
.cga .chat-users-panel-header {
    border-color: var(--cga-dark-gray);
    color: var(--cga-bright-cyan);
}
[data-theme="cga"] .chat-user-item:hover,
.cga .chat-user-item:hover {
    background: rgba(85,85,85,.2);
}
[data-theme="cga"] .chat-user-nick,
.cga .chat-user-nick {
    color: var(--cga-bright-green);
}
[data-theme="cga"] .chat-user-system,
.cga .chat-user-system {
    color: var(--cga-dark-gray);
}
/* ---- Responsive ---- */
@media (max-width: 576px) {
    .chat-msg-group {
        max-width: 90%;
    }
    .chat-container {
        height: calc(100vh - 140px);
    }
    #chat-toasts {
        left: 10px;
        right: 10px;
        max-width: none;
    }
}

/* Forum message body styles */
div.message {
    word-wrap: break-word;
    overflow-wrap: break-word;
}
div.message blockquote {
    border-left: 3px solid #555;
    margin: 0.5em 0;
    padding: 0.25em 0.75em;
    color: #aaa;
}
div.message pre.ansi {
    background-color: #000;
    color: #aaa;
    font-size: 14px;
    line-height: 1.1;
    padding: 0.5em;
    overflow-x: auto;
    max-width: 100%;
    width: 80ch;
    overflow: hidden;
}

/* ANSI art rendered via GraphicsConverter (canvas image) */
div.message .ansi-render {
    max-width: 100%;
    overflow: hidden;
}
div.message .ansi-canvas-img {
    max-width: 100%;
    height: auto;
    image-rendering: pixelated;
    display: block;
}
[data-theme="cga"] div.message blockquote {
    border-left-color: #00aa00;
    color: #00aaaa;
}

/* ============ CRT Power-On Animation ============ */

/* The overlay that holds the animation layers */
.crt-overlay {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 1041; /* above terminal-panel */
    pointer-events: none;
    background: #000;
}

/* Center scanline flash */
.crt-scanline {
    position: absolute;
    left: 0; right: 0;
    top: 50%;
    height: 2px;
    background: #fff;
    box-shadow: 0 0 30px 10px rgba(255,255,255,0.8);
    transform: translateY(-50%) scaleY(1);
    opacity: 0;
}

/* Bloom: the scanline expands vertically to reveal screen */
.crt-bloom {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(255,255,255,0);
    opacity: 0;
}

/* Horizontal offset bands for signal instability */
.crt-band {
    position: absolute;
    left: 0; right: 0;
    background: transparent;
    overflow: hidden;
}

/* Rolling band (vertical scroll artifact) */
.crt-roll-band {
    position: absolute;
    left: 0; right: 0;
    height: 40px;
    background: linear-gradient(
        to bottom,
        transparent,
        rgba(255,255,255,0.06) 30%,
        rgba(255,255,255,0.1) 50%,
        rgba(255,255,255,0.06) 70%,
        transparent
    );
    opacity: 0;
}

/* Brightness pulse */
.crt-brightness {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(255,255,255,0);
    opacity: 0;
}

/* Subtle phosphor scanlines over the terminal (persistent, very faint) */
.terminal-panel::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: repeating-linear-gradient(
        to bottom,
        transparent,
        transparent 2px,
        rgba(0,0,0,0.03) 2px,
        rgba(0,0,0,0.03) 4px
    );
    pointer-events: none;
    z-index: 1;
}

/* Animation classes applied by JS */
.crt-phase-scanline .crt-scanline {
    opacity: 1;
    animation: crt-flash 40ms ease-out forwards;
}

.crt-phase-bloom .crt-bloom {
    opacity: 1;
    animation: crt-bloom-expand 130ms ease-out forwards;
}

.crt-phase-bloom .crt-scanline {
    animation: crt-line-expand 130ms ease-out forwards;
}

.crt-phase-unstable .crt-band {
    animation: crt-band-shift 220ms steps(3) forwards;
}

.crt-phase-unstable .crt-roll-band {
    opacity: 1;
    animation: crt-roll 220ms linear forwards;
}

.crt-phase-unstable .crt-brightness {
    opacity: 1;
    animation: crt-bright-pulse 220ms ease-in-out forwards;
}

.crt-phase-lock .crt-band {
    animation: crt-snap 40ms step-end forwards !important;
}

.crt-phase-settle .crt-overlay {
    animation: crt-settle-flicker 90ms steps(2) forwards;
}

/* Keyframes */
@keyframes crt-flash {
    0%   { opacity: 0; box-shadow: 0 0 4px 1px rgba(255,255,255,0.3); }
    50%  { opacity: 1; box-shadow: 0 0 40px 15px rgba(255,255,255,0.9); }
    100% { opacity: 1; box-shadow: 0 0 20px 8px rgba(255,255,255,0.5); }
}

@keyframes crt-line-expand {
    0%   { height: 2px; top: 50%; transform: translateY(-50%); opacity: 1; }
    100% { height: 100%; top: 0; transform: translateY(0); opacity: 0; }
}

@keyframes crt-bloom-expand {
    0%   { background: rgba(255,255,255,0.7); }
    40%  { background: rgba(255,255,255,0.3); }
    100% { background: rgba(255,255,255,0); }
}

@keyframes crt-band-shift {
    0%   { transform: translateX(3px); }
    33%  { transform: translateX(-4px); }
    66%  { transform: translateX(2px); }
    100% { transform: translateX(2px); }
}

@keyframes crt-snap {
    0%   { transform: translateX(0); }
    100% { transform: translateX(0); }
}

@keyframes crt-roll {
    0%   { top: 70%; }
    100% { top: -10%; }
}

@keyframes crt-bright-pulse {
    0%   { background: rgba(255,255,255,0); }
    30%  { background: rgba(255,255,255,0.08); }
    60%  { background: rgba(255,255,255,0); }
    100% { background: rgba(255,255,255,0); }
}

@keyframes crt-settle-flicker {
    0%   { opacity: 1; }
    33%  { opacity: 0.92; }
    66%  { opacity: 1; }
    100% { opacity: 1; }
}

/* ── Oneliners page ── */
.ol-page,
.ol-post-card,
.ol-feed-viewport,
.ol-feed,
.ol-preview-box,
#ol-input,
.ol-send-btn {
    font-family: 'Amour Stories', sans-serif;
}
.ol-page {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}
.ol-title {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 1.08rem;
}
.ol-refresh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0;
    background: #000;
    border-color: #55ffff;
    color: #55ffff;
}
.ol-refresh-btn:hover,
.ol-refresh-btn:focus {
    background: rgba(85, 255, 255, 0.12);
    border-color: #ffffff;
    color: #ffffff;
}
.ol-post-card {
    border: 1px solid #55ffff;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35);
    margin-bottom: 0.8rem !important;
}
.ol-post-card .card-body {
    background: #000;
}
.ol-post-form {
    align-items: stretch;
}
#ol-input {
    min-height: 42px;
    background: #000;
    border: 1px solid #55ffff;
    color: #ffffff;
    font-size: 1.05rem;
    line-height: 1.1;
}
#ol-input::placeholder {
    color: #aaaaaa;
    opacity: 1;
}
#ol-input:focus {
    background: #000;
    color: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 0 0 0.1rem rgba(85, 255, 255, 0.2);
}
.ol-send-btn {
    min-width: 86px;
    font-size: 1rem;
}
.ol-post-note {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 0.45rem;
}
.ol-char-count {
    color: #55ffff;
    white-space: nowrap;
}
.ol-char-count.is-over {
    color: #ff5555;
}
#ol-input.is-invalid,
#ol-input.is-invalid:focus {
    border-color: #ff5555;
    box-shadow: 0 0 0 0.1rem rgba(255, 85, 85, 0.18);
}
.ol-guest-note {
    color: #55ffff;
    font-size: 1.02rem;
}
.ol-feed-viewport {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 0.1rem;
    padding-bottom: 0.25rem;
}
.ol-feed {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}
.ol-card,
.ol-row {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 0.9rem 1rem;
    background: #000;
    border: 1px solid #5555ff;
    border-radius: 0.7rem;
    box-shadow: 0 0 0 1px rgba(85, 85, 255, 0.08);
}
.ol-card:hover,
.ol-row:hover {
    border-color: #55ffff;
    box-shadow: 0 0 0 1px rgba(85, 255, 255, 0.12);
}
.ol-row:last-child {
    margin-bottom: 0;
}
.ol-card-status {
    justify-content: center;
    padding: 1rem;
}
.ol-status-text {
    color: #aaaaaa;
    font-size: 1rem;
    text-align: center;
}
.ol-card-status-error .ol-status-text {
    color: #ff5555;
}
.ol-card-status-loading .ol-status-text {
    color: #55ffff;
}
.ol-card-status-empty .ol-status-text {
    color: #ffffff;
}
.ol-feed-status {
    min-height: 1.25rem;
    padding: 0 0.2rem 0.45rem;
    color: #aaaaaa;
    font-size: 0.92rem;
}
.ol-feed-status.is-loading { color: #55ffff; }
.ol-feed-status.is-error { color: #ff5555; }
.ol-feed-status.is-end { color: #ff55ff; }
.ol-feed-sentinel {
    width: 100%;
    height: 1px;
}
.ol-avatar-wrap {
    flex: 0 0 48px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 0.15rem;
}
.ol-avatar {
    flex-shrink: 0;
    width: 48px;
    min-height: 48px;
    overflow: hidden;
    background: #000;
}
.ol-avatar img {
    width: 48px;
    height: auto;
    image-rendering: pixelated;
    display: block;
}
.ol-body { flex: 1; min-width: 0; }
.ol-meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.8rem;
    margin-bottom: 0.35rem;
}
.ol-byline {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.45rem;
    min-width: 0;
}
.ol-alias {
    color: #55ffff !important;
    font-size: 1.08rem;
    font-weight: normal !important;
}
.ol-system {
    color: #ffff55;
    font-size: 0.98rem;
}
.ol-time {
    color: #ff55ff;
    font-size: 0.94rem;
    white-space: nowrap;
    flex-shrink: 0;
}
.ol-text {
    color: #ffffff;
    word-break: break-word;
    font-size: 1.16rem;
    line-height: 1.28;
}
.ol-text span {
    line-height: inherit;
}

/* Color toolbar */
#ol-color-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
}
.ol-color-btn {
    display: inline-block;
    width: 26px;
    height: 22px;
    border: 1px solid #444;
    border-radius: 3px;
    cursor: pointer;
    font-size: 10px;
    font-family: monospace;
    color: #fff;
    text-align: center;
    line-height: 20px;
    padding: 0;
}
.ol-color-btn:hover { border-color: #aaa; transform: scale(1.15); }
.ol-color-reset {
    background: #333 !important;
    color: #aaa !important;
    font-size: 13px;
}

/* Preview box */
.ol-preview-box {
    background: #111;
    border: 1px solid #333;
    border-radius: 4px;
    font-size: 1rem;
    color: #aaa;
}

@media (max-width: 767px) {
    .ol-card {
        padding: 0.8rem 0.85rem;
        gap: 0.75rem;
    }
    .ol-meta {
        flex-direction: column;
        gap: 0.25rem;
    }
    .ol-time {
        white-space: normal;
    }
    .ol-post-form {
        flex-direction: column;
    }
    .ol-send-btn {
        width: 100%;
    }
}

@media (min-width: 768px) {
    .spa-container > .row:has(> #content > .ol-page) {
        height: calc(100vh - var(--navbar-h, 56px) - 1.5rem);
    }
    .spa-container > .row:has(> #content > .ol-page) > #content {
        height: calc(100vh - var(--navbar-h, 56px) - 1.5rem);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        min-height: 0;
    }
    .spa-container > .row:has(> #content > .ol-page) > #sidebar {
        position: sticky;
        top: calc(var(--navbar-h, 56px) + 0.75rem);
        align-self: flex-start;
        max-height: calc(100vh - var(--navbar-h, 56px) - 1.5rem);
        overflow: hidden;
    }
}

/* ============================================================
 *  CRT power-off animation (inverse of power-on)
 * ============================================================ */

.crt-off-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 10;
    pointer-events: none;
    background: transparent;
}

.crt-off-line {
    position: absolute;
    left: 5%; right: 5%;
    top: 50%;
    height: 2px;
    transform: translateY(-50%);
    background: #fff;
    box-shadow:
        0 0 15px 5px rgba(200, 220, 255, 0.7),
        0 0 40px 10px rgba(180, 200, 255, 0.3);
    opacity: 0;
}

/* Phase 1: brief brightness flash, then fade to black */
.crt-off-flash {
    animation: crt-off-flash 80ms ease-out forwards;
}

/* Phase 2: black screen with bright horizontal line at center */
.crt-off-line-show {
    background: #000;
}
.crt-off-line-show .crt-off-line {
    opacity: 1;
    transition: opacity 30ms ease;
}

/* Phase 3: line shrinks horizontally and fades (phosphor decay) */
.crt-off-line-fade {
    background: #000;
}
.crt-off-line-fade .crt-off-line {
    animation: crt-off-line-shrink 200ms ease-in forwards;
}

@keyframes crt-off-flash {
    0%   { background: rgba(255, 255, 255, 0); }
    35%  { background: rgba(255, 255, 255, 0.2); }
    100% { background: #000; }
}

@keyframes crt-off-line-shrink {
    0%   {
        opacity: 1;
        left: 5%; right: 5%;
        box-shadow:
            0 0 15px 5px rgba(200, 220, 255, 0.7),
            0 0 40px 10px rgba(180, 200, 255, 0.3);
    }
    50%  {
        opacity: 0.8;
        left: 25%; right: 25%;
        box-shadow:
            0 0 10px 3px rgba(200, 220, 255, 0.5),
            0 0 25px 6px rgba(180, 200, 255, 0.2);
    }
    100% {
        opacity: 0;
        left: 48%; right: 48%;
        box-shadow:
            0 0 4px 2px rgba(200, 220, 255, 0.1);
    }
}

/* LCD fonts */
@font-face {
    font-family: 'DSEG14';
    src: url('../fonts/DSEG14Classic-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'VT323';
    src: url('../fonts/VT323-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Track name — LCD display */
.radio-track-name {
    font-family: 'VT323', monospace !important;
    font-size: 14px !important;
    font-weight: normal !important;
    color: #004848 !important;
    background: linear-gradient(180deg, #5aeaea 0%, #38c8c8 30%, #20a8a8 100%) !important;
    border-top: 2px solid #1a1a1a !important;
    border-left: 2px solid #1a1a1a !important;
    border-right: 2px solid #555 !important;
    border-bottom: 2px solid #555 !important;
    border-radius: 2px !important;
    box-shadow:
        inset 0 2px 8px rgba(0,0,0,0.5),
        0 0 6px rgba(0,255,255,0.12) !important;
    width: 120px !important;
    flex-shrink: 0;
    white-space: nowrap;
    overflow: hidden;
    margin: 0 6px;
    padding: 0 3px !important;
    line-height: 1.1 !important;
    height: 16px !important;
    cursor: pointer;
    position: relative;
    text-shadow: 0 0 5px rgba(0,90,90,0.6);
    letter-spacing: 1px;
    text-transform: uppercase;
    display: flex !important;
    align-items: center;
}
.radio-track-name:hover {
    color: #003030 !important;
    box-shadow:
        inset 0 2px 8px rgba(0,0,0,0.5),
        0 0 14px rgba(0,255,255,0.3) !important;
}

/* LCD scroll inner span */
.radio-track-name .lcd-scroll {
    display: inline-block;
    white-space: nowrap;
    padding-right: 3ch;
}
.radio-track-name .lcd-scroll.scrolling {
    animation: lcd-scroll-left var(--lcd-duration, 8s) linear infinite;
}
@keyframes lcd-scroll-left {
    0%   { transform: translateX(0); }
    12%  { transform: translateX(0); }
    88%  { transform: translateX(var(--lcd-shift, -100px)); }
    100% { transform: translateX(var(--lcd-shift, -100px)); }
}

/* LCD flash for idle state */
.radio-track-name .lcd-scroll.lcd-flash {
    animation: lcd-blink 1.2s step-end infinite;
}
@keyframes lcd-blink {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0; }
}

/* ================================================================
   Radio playlist panel — single-pane redesign
   ================================================================ */
.radio-playlist-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 1058;
    border: 0;
    padding: 0;
    background: rgba(2, 4, 12, 0.78);
    backdrop-filter: blur(4px);
}
.radio-playlist-backdrop.show {
    display: block;
}
.radio-playlist-panel {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 1059;
    box-sizing: border-box;
    width: min(92vw, 640px);
    min-width: min(340px, 92vw);
    max-width: 640px;
    background:
        linear-gradient(180deg, rgba(14, 18, 40, 0.98), rgba(6, 8, 22, 0.98)),
        #080a12;
    border: 1px solid rgba(85, 255, 255, 0.42);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.72);
}
.radio-playlist-panel.show {
    display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
    z-index: 2000;
    width: min(96vw, 640px);
    min-width: min(320px, 94vw);
    max-width: 640px;
}

/* Shell */
.rl-shell {
    position: relative;
    display: flex;
    flex-direction: column;
    max-height: min(88vh, 860px);
}

/* Header */
.rl-head {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 12px;
    padding: 0 14px 0 0;
    border-bottom: 1px solid rgba(85, 255, 255, 0.18);
    background: rgba(10, 16, 34, 0.92);
}
.rl-head-left {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: grab;
    padding: 10px 12px 10px 14px;
    border-radius: 0 0 6px 0;
    user-select: none;
    -webkit-user-select: none;
    transition: background 0.15s;
}
.rl-head-left:hover {
    background: rgba(85, 255, 255, 0.08);
}
.rl-head-left:active {
    cursor: grabbing;
}
.radio-playlist-panel.is-dragging-panel,
.radio-playlist-panel.is-resizing-panel {
    transition: none !important;
    user-select: none;
}
.rl-drag-indicator {
    flex: 0 0 auto;
    width: 14px;
    height: 18px;
    opacity: 0.8;
    border-radius: 3px;
    background-image:
        radial-gradient(circle, rgba(85, 255, 255, 0.92) 1px, transparent 1.4px);
    background-size: 6px 6px;
    background-position: 0 0;
}
.rl-brand {
    color: #55FF55;
    font-size: 0.72rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    white-space: nowrap;
}
.rl-head-right {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
}
.rl-mode-tabs {
    display: flex;
    border: 1px solid rgba(85, 255, 255, 0.28);
    border-radius: 6px;
    overflow: hidden;
}
.rl-mode-tab {
    border: 0;
    background: transparent;
    color: #9AB;
    padding: 6px 14px;
    font-size: 0.78rem;
    line-height: 1;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
}
.rl-mode-tab + .rl-mode-tab {
    border-left: 1px solid rgba(85, 255, 255, 0.18);
}
.rl-mode-tab:hover {
    background: rgba(85, 255, 255, 0.08);
    color: #CFF;
}
.rl-mode-tab.is-active {
    background: rgba(85, 255, 255, 0.18);
    color: #55FFFF;
    font-weight: 600;
}
.rl-close {
    border: 1px solid rgba(255, 85, 85, 0.5);
    background: transparent;
    color: #FF5555;
    border-radius: 4px;
    padding: 4px 10px;
    font-size: 0.82rem;
    line-height: 1;
}
.rl-close:hover {
    background: rgba(255, 85, 85, 0.12);
    color: #FF8888;
}

/* Context bar (active playlist) */
.rl-context {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 14px;
    background: rgba(8, 14, 30, 0.88);
    border-bottom: 1px solid rgba(85, 255, 255, 0.1);
}
.rl-context-info {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    flex: 1 1 auto;
}
.rl-context-label {
    color: #7C8AA5;
    font-size: 0.72rem;
    white-space: nowrap;
}
.rl-context-select {
    min-width: 0;
    max-width: 220px;
    flex: 1 1 auto;
    background: rgba(3, 6, 18, 0.96);
    border: 1px solid rgba(85, 255, 255, 0.38);
    color: #FFFFFF;
    border-radius: 4px;
    padding: 4px 8px;
    font-size: 0.78rem;
}
.rl-context-count {
    color: #55FFFF;
    font-size: 0.72rem;
    white-space: nowrap;
}
.rl-context-actions {
    display: flex;
    gap: 8px;
}

/* Create bar (no playlist selected) */
.rl-create {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: rgba(8, 14, 30, 0.88);
    border-bottom: 1px solid rgba(85, 255, 255, 0.1);
}
.rl-create-prompt {
    color: #8DEBFF;
    font-size: 0.76rem;
    white-space: nowrap;
}
.rl-create-input {
    flex: 1 1 auto;
    min-width: 0;
    background: rgba(3, 6, 18, 0.96);
    border: 1px solid rgba(85, 255, 255, 0.42);
    color: #FFFFFF;
    border-radius: 4px;
    padding: 6px 10px;
    font-size: 0.8rem;
}
.rl-create-input::placeholder {
    color: rgba(170, 170, 170, 0.75);
}

/* Buttons */
.rl-btn {
    border: 1px solid rgba(85, 255, 255, 0.38);
    background: transparent;
    color: #C9F6FF;
    border-radius: 5px;
    padding: 5px 12px;
    font-size: 0.76rem;
    line-height: 1;
    white-space: nowrap;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.rl-btn:hover {
    background: rgba(85, 255, 255, 0.1);
    color: #FFFFFF;
}
.rl-btn-play {
    border-color: rgba(85, 255, 85, 0.5);
    color: #55FF55;
}
.rl-btn-play:hover {
    background: rgba(85, 255, 85, 0.12);
}
.rl-btn-go {
    border-color: rgba(85, 255, 85, 0.5);
    color: #55FF55;
}
.rl-btn-go:hover {
    background: rgba(85, 255, 85, 0.12);
}
.rl-btn-dim {
    color: #7C8AA5;
    border-color: rgba(85, 255, 255, 0.2);
}
.rl-btn-danger {
    border-color: rgba(255, 85, 85, 0.45);
    color: #FF8888;
}
.rl-btn-danger:hover {
    background: rgba(255, 85, 85, 0.12);
}
.rl-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Toolbar */
.rl-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 14px;
    align-items: center;
    border-bottom: 1px solid rgba(85, 255, 255, 0.08);
}
.rl-search {
    flex: 1 1 200px;
    min-width: 0;
    background: rgba(3, 6, 18, 0.96);
    border: 1px solid rgba(85, 255, 255, 0.52);
    color: #55FFFF;
    border-radius: 5px;
    padding: 6px 10px;
    font-size: 0.8rem;
}
.rl-search::placeholder {
    color: rgba(170, 170, 170, 0.8);
}
.rl-filter {
    flex: 0 1 160px;
    min-width: 0;
    background: rgba(3, 6, 18, 0.96);
    border: 1px solid rgba(85, 255, 255, 0.32);
    color: #FFFFFF;
    border-radius: 4px;
    padding: 5px 6px;
    font-size: 0.76rem;
}
.rl-toolbar-right {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-left: auto;
}
.rl-playmode {
    display: inline-flex;
    border: 1px solid rgba(85, 255, 255, 0.22);
    border-radius: 5px;
    overflow: hidden;
}
.rl-playmode-btn {
    border: 0;
    background: transparent;
    color: #9AB;
    padding: 5px 10px;
    font-size: 0.72rem;
    line-height: 1;
    transition: background 0.12s, color 0.12s;
}
.rl-playmode-btn + .rl-playmode-btn {
    border-left: 1px solid rgba(85, 255, 255, 0.18);
}
.rl-playmode-btn.is-active {
    background: rgba(85, 255, 255, 0.16);
    color: #55FFFF;
}
.rl-playmode-btn:hover {
    background: rgba(85, 255, 255, 0.08);
}

/* Summary footer — sticky at bottom */
.rl-summary {
    color: #FF55FF;
    font-size: 0.72rem;
    padding: 6px 14px;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-top: 1px solid rgba(255, 85, 255, 0.15);
    background: rgba(8, 12, 28, 0.95);
    flex: 0 0 auto;
}
.rl-resize-handle {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 18px;
    height: 18px;
    cursor: nwse-resize;
    z-index: 10;
}
.rl-resize-handle::after {
    content: '';
    position: absolute;
    right: 3px;
    bottom: 3px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #55FFFF;
    border-bottom: 2px solid #55FFFF;
    opacity: 0.5;
}
.rl-resize-handle:hover::after {
    opacity: 1;
}

/* Track list */
.rl-list {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 6px 10px 14px;
    display: grid;
    gap: 6px;
}
.rl-list::-webkit-scrollbar { width: 7px; }
.rl-list::-webkit-scrollbar-track { background: transparent; }
.rl-list::-webkit-scrollbar-thumb { background: rgba(85,255,255,0.16); border-radius: 6px; }
.rl-list::-webkit-scrollbar-thumb:hover { background: rgba(85,255,255,0.3); }

.rl-empty {
    color: #556;
    font-size: 0.82rem;
    padding: 24px 14px;
    text-align: center;
    line-height: 1.5;
}
.rl-empty strong {
    color: #55FFFF;
}

/* Track row */
.rl-track {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 7px;
    border: 1px solid rgba(85, 255, 255, 0.1);
    background: rgba(10, 15, 34, 0.8);
    transition: border-color 0.15s, background 0.15s;
}
.rl-track:hover {
    background: rgba(15, 25, 52, 0.92);
    border-color: rgba(85, 255, 255, 0.28);
}
.rl-track.is-current {
    background: rgba(12, 30, 56, 0.96);
    border-color: rgba(85, 255, 255, 0.55);
}
.rl-track.is-drop-target {
    border-color: rgba(255, 255, 85, 0.72);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 85, 0.32);
}
.rl-track.is-dragging {
    opacity: 0.5;
}

/* Drag handle */
.rl-drag {
    flex: 0 0 18px;
    align-self: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #55FFFF;
    opacity: 0.55;
    cursor: grab;
    user-select: none;
    font-size: 0.85rem;
}

/* Position badge */
.rl-track-pos {
    flex: 0 0 22px;
    text-align: center;
    color: #55FFFF;
    font-size: 0.68rem;
    font-weight: 600;
}

/* Art */
.rl-track-art {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 5px;
    border: 1px solid rgba(85, 255, 255, 0.12);
    background: linear-gradient(180deg, rgba(25, 28, 54, 0.9), rgba(9, 10, 24, 0.95));
    color: #55FFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    overflow: hidden;
}
.rl-track-art img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Body */
.rl-track-body {
    min-width: 0;
    flex: 1 1 auto;
    display: grid;
    gap: 2px;
}
.rl-track-title {
    color: #FFFFFF;
    font-size: 0.86rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.rl-track-artist {
    color: #55FF55;
    font-size: 0.74rem;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.rl-track-chip {
    display: inline-block;
    padding: 1px 6px;
    border-radius: 999px;
    background: rgba(85, 255, 255, 0.07);
    color: #8DEBFF;
    font-size: 0.64rem;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Actions */
.rl-track-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
}
.rl-action {
    border: 1px solid rgba(85, 255, 255, 0.25);
    background: rgba(7, 11, 24, 0.85);
    color: #9AB;
    border-radius: 5px;
    padding: 5px 8px;
    font-size: 0.74rem;
    line-height: 1;
    transition: background 0.12s, color 0.12s, border-color 0.12s;
    white-space: nowrap;
}
.rl-action:hover {
    background: rgba(85, 255, 255, 0.08);
    color: #FFFFFF;
    border-color: rgba(85, 255, 255, 0.4);
}

/* Play button — small circle */
.rl-action-play {
    width: 30px;
    height: 30px;
    padding: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    color: #7C8AA5;
    border-color: rgba(85, 255, 255, 0.18);
}
.rl-action-play:hover {
    color: #55FF55;
    border-color: rgba(85, 255, 85, 0.5);
}
.rl-track.is-current .rl-action-play {
    color: #FFFF55;
    border-color: rgba(255, 255, 85, 0.5);
}

/* Add/Added toggle button — fixed width so layout doesn't shift */
.rl-action-add {
    width: 78px;
    text-align: center;
    border-color: rgba(85, 255, 85, 0.45);
    color: #55FF55;
    font-weight: 600;
    padding: 5px 0;
    transition: background 0.12s, color 0.12s, border-color 0.12s;
}
.rl-action-add:hover {
    background: rgba(85, 255, 85, 0.12);
    color: #88FF88;
}
.rl-action-add.is-added {
    border-color: rgba(85, 255, 255, 0.25);
    color: #7C8AA5;
    font-weight: 400;
}
.rl-action-add.is-added:hover {
    border-color: rgba(255, 85, 85, 0.4);
    color: #FF8888;
    background: rgba(255, 85, 85, 0.08);
}

/* Remove button */
.rl-action-remove {
    width: 28px;
    height: 28px;
    padding: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    color: #FF8888;
    border-color: rgba(255, 85, 85, 0.3);
}
.rl-action-remove:hover {
    background: rgba(255, 85, 85, 0.12);
    color: #FFAAAA;
    border-color: rgba(255, 85, 85, 0.5);
}

/* Delete playlist row at bottom */
.rl-delete-row {
    display: flex;
    justify-content: center;
    padding: 12px 0 4px;
}

/* ================================================================
   Progressive responsive: icon-only navbar at tight widths
   ================================================================ */

/* Level 1 (< 1200px / below xl): left nav labels hide, icons stand alone */
@media (max-width: 1199.98px) {
    .navbar-nav.me-auto > .nav-item > .nav-link > .nav-label {
        display: none;
    }
    .navbar-nav.me-auto .dropdown-menu .dropdown-item {
        display: flex;
        align-items: center;
        gap: 0.55rem;
        white-space: nowrap;
    }
    .navbar-nav.me-auto .dropdown-menu .nav-label {
        display: inline;
        margin-left: 0;
    }
    /* Brand label also hides — icon only */
    .brand-label {
        display: none;
    }
}

/* Level 2 (< 992px / below lg): remaining labels hide, radio compacts */
@media (max-width: 991.98px) {
    .nav-label {
        display: none;
    }
    .navbar-nav.me-auto .dropdown-menu .dropdown-item {
        display: flex;
        align-items: center;
        gap: 0.55rem;
        white-space: nowrap;
    }
    .navbar-nav.me-auto .dropdown-menu .nav-label {
        display: inline !important;
        margin-left: 0;
    }
    .radio-track-name {
        width: 90px !important;
    }
    #radio-viz {
        width: 44px;
    }
}

/* Level 3 (< 768px / below md): Bootstrap hamburger kicks in.
   Terminal + radio stay visible outside collapse.
   Radio shows compact controls. */
@media (max-width: 767.98px) {
    /* Radio: hide LCD, keep viz + transport */
    .radio-track-name {
        display: none !important;
    }
    .radio-volume {
        display: none !important;
    }
    #radio-viz {
        width: 36px;
        height: 26px;
    }
    .radio-btn {
        font-size: 14px;
        padding: 0 3px;
    }
    .radio-btn-play {
        font-size: 16px;
        min-width: 20px;
    }
    #radio-container {
        margin-right: 4px;
        gap: 0;
    }
    .radio-playlist-panel {
        right: -28px;
        min-width: min(320px, 94vw);
    }

    /* Terminal button: shrink CRT screen for mobile */
    .navbar-terminal-btn {
        margin-left: 4px;
        margin-right: 2px;
    }
    #btn-terminal .crt-screen {
        width: 48px;
        height: 18px;
    }
    #btn-terminal .crt-text {
        font-size: 11px;
    }
    #btn-terminal .modem-strip {
        gap: 4px;
    }
    #btn-terminal .mled-light {
        width: 5px;
        height: 2px;
    }
    #btn-terminal .mled-label {
        font-size: 6px;
    }

    /* Hamburger menu: show text labels next to icons */
    #navbarMain .nav-label {
        display: inline !important;
        margin-left: 0.4rem;
        font-size: 0.95rem;
    }
    #navbarMain .brand-label {
        display: inline !important;
    }

    /* Flatten dropdown submenus in mobile menu */
    #navbarMain .navbar-nav.me-auto .dropdown-menu {
        position: static !important;
        float: none;
        border: none;
        background: transparent;
        box-shadow: none;
        padding: 0;
        margin: 0;
        display: block !important;
    }
    #navbarMain .navbar-nav.me-auto .dropdown-toggle::after {
        display: none;
    }
    #navbarMain .navbar-nav.me-auto .dropdown-toggle {
        pointer-events: none;
        opacity: 0.6;
        font-size: 0.8rem;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        padding-bottom: 0.2rem;
        border-bottom: 1px solid rgba(255,255,255,0.15);
        margin-top: 0.5rem;
    }
    #navbarMain .navbar-nav.me-auto .dropdown-item {
        color: rgba(255, 255, 255, 0.85);
        padding: 0.5rem 1rem 0.5rem 1.5rem;
        background: transparent;
    }
    #navbarMain .navbar-nav.me-auto .dropdown-item:hover,
    #navbarMain .navbar-nav.me-auto .dropdown-item:focus {
        color: #fff;
        background: rgba(255, 255, 255, 0.1);
    }
}

/* Level 2.5 (768px-991px / md only): tablet — show full radio controls */
@media (min-width: 768px) and (max-width: 991.98px) {
    /* Radio: show LCD but narrower */
    .radio-track-name {
        width: 80px !important;
    }
    #radio-viz {
        width: 44px;
        height: 32px;
    }
    /* Terminal: slightly compact */
    #btn-terminal .crt-screen {
        width: 56px;
        height: 20px;
    }
    #btn-terminal .crt-text {
        font-size: 12px;
    }
}

/* Level 4 (< 480px / very small phones): extra compact */
@media (max-width: 479.98px) {
    #btn-terminal .crt-screen {
        width: 40px;
        height: 16px;
    }
    #btn-terminal .crt-text {
        font-size: 10px;
        letter-spacing: 0.5px;
    }
    #btn-terminal .modem-strip {
        display: none;   /* hide modem LEDs on very small screens */
    }
    #radio-viz {
        width: 28px;
        height: 22px;
    }
    .radio-btn {
        font-size: 12px;
        padding: 0 2px;
    }
    .radio-btn-play {
        font-size: 14px;
        min-width: 16px;
    }
}

/* =========================================================
   Visualizer Panel
   ========================================================= */

/* Full-viewport overlay, mirrors terminal-panel pattern */
.viz-panel {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 1040;
    background: #000;
    display: flex;
    flex-direction: column;
    padding-top: var(--navbar-h, 56px);
    opacity: 1;
    pointer-events: auto;
}

.viz-panel.is-hidden {
    opacity: 0;
    pointer-events: none;
}

body.viz-open {
    overflow: hidden;
}

/* Canvas container: fills available space */
.viz-canvas-container {
    flex: 1;
    min-height: 0;
    position: relative;
    overflow: hidden;
    width: 100%;
}

/* Stacked canvases (MilkDrop below, wireframe above) */
.viz-layer {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    display: block;
}
#viz-milkdrop {
    z-index: 0;
    opacity: 0.55; /* dim MilkDrop so wireframe pops */
}
#viz-wireframe {
    z-index: 1;
}

/* Close button */
.viz-close {
    position: absolute;
    top: calc(var(--navbar-h, 56px) + 8px);
    right: 16px;
    z-index: 10;
    background: transparent;
    border: 1px solid rgba(51, 255, 51, 0.4);
    color: #33FF33;
    font-size: 1.6rem;
    width: 36px;
    height: 36px;
    line-height: 1;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
}
.viz-close:hover {
    background: rgba(51, 255, 51, 0.15);
    border-color: #33FF33;
}

.viz-fx-hud {
    position: absolute;
    top: calc(var(--navbar-h, 56px) + 10px);
    left: 16px;
    z-index: 12;
    padding: 10px 12px;
    border: 1px solid rgba(85, 255, 255, 0.3);
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.4);
    color: #aaaaaa;
    font-family: 'Amour Stories', sans-serif;
    font-size: 13px;
    line-height: 1.2;
    pointer-events: none;
}
.viz-fx-row {
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
.viz-fx-row + .viz-fx-row {
    margin-top: 5px;
}
.viz-fx-key {
    min-width: 18px;
    padding: 1px 4px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.9);
    color: #ffffff;
    text-align: center;
}
.viz-fx-label {
    color: #aaaaaa;
}
.viz-fx-value {
    color: #666666;
}
.viz-fx-value.is-on {
    color: #55ff55;
}
.viz-fx-value.is-laser {
    color: #ff5555;
}
.viz-fx-value.is-wave {
    color: #55ffff;
}

/* Metadata HUD - album art + track info card
 * Desktop: top-left, click to minimize/expand, persistent
 * Mobile: bottom-docked beside the close button, persistent */
.viz-meta-hud {
    position: absolute;
    top: calc(var(--navbar-h, 56px) + 16px);
    left: 16px;
    z-index: 11;
    width: clamp(260px, 34vw, 420px);
    max-width: calc(100vw - 32px);
    padding: 12px 16px;
    border: 1px solid rgba(85, 255, 255, 0.25);
    border-radius: 10px;
    background: rgba(0, 0, 10, 0.65);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 0 30px rgba(0, 170, 170, 0.15);
    color: #aaaaaa;
    font-family: 'Amour Stories', sans-serif;
    font-size: 13px;
    line-height: 1.4;
    pointer-events: auto;
    cursor: pointer;
    opacity: 1;
    transition: opacity 0.6s ease, max-height 0.35s ease, padding 0.35s ease;
    overflow: hidden;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
    -webkit-user-select: none;
}
.viz-meta-hud[hidden] { display: none; }

/* --- Expanded card layout --- */
.viz-meta-expanded {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.viz-meta-art-wrap {
    flex-shrink: 0;
    width: 114px;
    height: 114px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid rgba(85, 255, 255, 0.2);
    box-shadow: 0 0 12px rgba(0, 170, 170, 0.2);
    background: rgba(0, 0, 0, 0.4);
}
.viz-meta-art {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.viz-meta-art-wrap:empty,
.viz-meta-art[src=""] { display: none; }
.viz-meta-art-wrap:has(img[src=""]) { display: none; }

.viz-meta-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.viz-meta-title {
    font-size: 15px;
    font-weight: bold;
    color: #55ffff;
    text-shadow: 0 0 6px rgba(85, 255, 255, 0.4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 4px;
}
.viz-meta-row {
    display: flex;
    gap: 8px;
    white-space: nowrap;
    overflow: hidden;
}
.viz-meta-row[hidden] { display: none; }
.viz-meta-key {
    color: #666;
    min-width: 65px;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.5px;
}
.viz-meta-val {
    color: #aaa;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* --- Minimized single-line bar (desktop) --- */
.viz-meta-mini {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    color: #55ffff;
    text-shadow: 0 0 4px rgba(85, 255, 255, 0.3);
    line-height: 1.2;
}
.viz-meta-mini[hidden] { display: none; }
/* Minimized state: tighter padding */
.viz-meta-hud.is-mini {
    width: clamp(200px, 24vw, 320px);
    padding: 8px 14px;
    border-radius: 6px;
    max-width: calc(100vw - 32px);
}
.viz-meta-hud.is-mini .viz-meta-expanded { display: none; }
.viz-meta-hud.is-mini .viz-meta-mini { display: block; }

/* On mobile: dock along the bottom and keep minimize available */
@media (max-width: 767.98px) {
    .viz-meta-hud {
        --viz-meta-mobile-max-w: calc(100vw - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px) - 16px);
        top: auto;
        left: calc(env(safe-area-inset-left, 0px) + 8px);
        right: calc(env(safe-area-inset-right, 0px) + 8px);
        bottom: calc(env(safe-area-inset-bottom, 0px) + 18px);
        width: auto;
        max-width: none;
        padding: 9px 10px;
        pointer-events: auto;
        cursor: pointer;
    }
    .viz-meta-expanded {
        display: grid;
        grid-template-columns: clamp(84px, 22vw, 112px) minmax(0, 1fr);
        align-items: center;
        gap: 10px;
    }
    .viz-meta-art-wrap {
        width: 100%;
        height: auto;
        aspect-ratio: 1 / 1;
        align-self: center;
    }
    .viz-meta-info {
        justify-content: center;
        gap: 1px;
    }
    .viz-meta-title {
        font-size: 14px;
        margin-bottom: 4px;
    }
    .viz-meta-row {
        display: grid;
        grid-template-columns: minmax(40px, auto) minmax(0, 1fr);
        gap: 6px;
        align-items: baseline;
    }
    .viz-meta-key {
        min-width: 0;
        font-size: 10px;
    }
    .viz-meta-val {
        min-width: 0;
        font-size: 12px;
    }
    .viz-meta-hud.is-mini {
        right: auto;
        width: fit-content;
        max-width: var(--viz-meta-mobile-max-w);
        padding: 8px 12px;
    }
}

@media (max-width: 767.98px) and (orientation: landscape) {
    .viz-meta-expanded {
        grid-template-columns: clamp(96px, 21vw, 132px) minmax(0, 1fr);
        gap: 12px;
    }
    .viz-meta-title {
        font-size: 15px;
    }
}

/* Lyrics overlay */
.viz-lyrics {
    position: absolute;
    bottom: 6%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    max-width: 80%;
    text-align: center;
    font-family: 'Courier New', monospace;
    font-size: clamp(1rem, 2.5vw, 2rem);
    color: #33FF33;
    text-shadow:
        0 0 6px #33FF33,
        0 0 18px rgba(51, 255, 51, 0.5),
        0 0 40px rgba(51, 255, 51, 0.2);
    opacity: 0.9;
    pointer-events: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Lyric flash animation */
@keyframes viz-lyric-pop {
    0%   { transform: translateX(-50%) scale(1.08); opacity: 1; }
    100% { transform: translateX(-50%) scale(1);    opacity: 0.9; }
}
.viz-lyric-flash {
    animation: viz-lyric-pop 0.3s ease-out;
}

/* Subtle scanline overlay on viz panel */
.viz-panel::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: repeating-linear-gradient(
        to bottom,
        transparent,
        transparent 2px,
        rgba(0,0,0,0.04) 2px,
        rgba(0,0,0,0.04) 4px
    );
    pointer-events: none;
    z-index: 8;
}

/* Mobile adjustments */
@media (max-width: 767.98px) {
    .viz-panel {
        padding-top: var(--navbar-h, 48px);
    }
    .viz-close {
        top: calc(var(--navbar-h, 48px) + 8px);
        bottom: auto;
        right: calc(env(safe-area-inset-right, 0px) + 16px);
        z-index: 150;
        font-size: 2rem;
        width: 44px;
        height: 44px;
    }
    .viz-fx-hud {
        top: calc(var(--navbar-h, 48px) + 8px);
        left: 10px;
        padding: 8px 9px;
        font-size: 11px;
    }
    .viz-fx-row {
        gap: 6px;
    }
    .viz-lyrics {
        bottom: max(14%, calc(env(safe-area-inset-bottom, 0px) + 110px));
        max-width: 92%;
        font-size: clamp(0.85rem, 3.5vw, 1.5rem);
    }
}

/* Playlist panel overlay when visualizer is open */
body.radio-library-open {
    overflow: hidden;
}
body.viz-open .radio-playlist-backdrop.show {
    background: transparent;
    backdrop-filter: none;
}
body.viz-open .radio-playlist-panel.show {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2000;
    width: min(96vw, 640px);
    max-width: 640px;
}
body.viz-open .rl-list {
    max-height: 56vh;
}

@media (max-width: 599.98px) {
    .radio-playlist-panel.show {
        width: min(98vw, 640px);
        min-width: 0;
    }
    .rl-shell {
        max-height: min(92vh, 860px);
    }
    .rl-head {
        flex-wrap: wrap;
        gap: 8px;
        padding: 0 10px 0 0;
    }
    .rl-head-left {
        padding: 8px 10px;
        border-radius: 0 0 6px 0;
    }
    .rl-head-right {
        padding: 0 0 8px 10px;
        width: 100%;
        justify-content: space-between;
    }
    .rl-resize-handle {
        display: none;
    }
    .rl-toolbar {
        padding: 8px 10px;
        gap: 6px;
    }
    .rl-search {
        flex: 1 1 100%;
    }
    .rl-filter {
        flex: 1 1 120px;
    }
    .rl-toolbar-right {
        width: 100%;
        margin-left: 0;
        justify-content: space-between;
    }
    .rl-context {
        flex-wrap: wrap;
        gap: 6px;
        padding: 6px 10px;
    }
    .rl-create {
        flex-wrap: wrap;
        gap: 6px;
        padding: 8px 10px;
    }
    .rl-track {
        gap: 8px;
        padding: 7px 8px;
    }
    .rl-track-art {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
    }
    .rl-track-title {
        font-size: 0.82rem;
    }
    .rl-mode-tab {
        padding: 5px 10px;
        font-size: 0.72rem;
    }
}

/* Viz-local track picker overlay (inside viz-panel, not navbar) */
.viz-playlist-overlay {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 200;
    width: 90vw;
    max-width: 380px;
    max-height: 70vh;
    background: #0a0a1e;
    border: 2px solid rgba(255, 170, 0, 0.6);
    border-radius: 8px;
    padding: 12px;
    box-shadow: 0 0 30px rgba(255, 170, 0, 0.3), 0 4px 20px rgba(0, 0, 0, 0.8);
    display: flex;
    flex-direction: column;
}
.viz-playlist-close {
    position: absolute;
    top: 6px;
    right: 8px;
    background: none;
    border: none;
    color: #f55;
    font-size: 1.2rem;
    cursor: pointer;
    z-index: 5;
}
.viz-playlist-list {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    max-height: 55vh;
    margin-top: 4px;
}
.viz-pl-item {
    padding: 8px 10px;
    color: #aae;
    font-family: 'Amour Stories', sans-serif;
    font-size: 13px;
    border-bottom: 1px solid rgba(0, 255, 255, 0.1);
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: background 0.15s, color 0.15s;
}
.viz-pl-item:hover {
    background: rgba(0, 255, 255, 0.1);
    color: #0ff;
}
.viz-pl-item.viz-pl-active {
    color: #FFAA00;
    border-left: 3px solid #FFAA00;
    background: rgba(255, 170, 0, 0.08);
}

/* WebGL warning notice */
.viz-webgl-notice {
    position: absolute;
    bottom: 80px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    opacity: 1;
    transition: opacity 0.3s ease;
}
.viz-notice-content {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(0, 0, 40, 0.85);
    border: 1px solid rgba(85, 255, 255, 0.3);
    border-radius: 6px;
    padding: 10px 16px;
    font-size: 13px;
    color: #aaa;
    backdrop-filter: blur(8px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
}
.viz-notice-icon {
    font-size: 16px;
}
.viz-notice-text {
    color: #ccc;
}
.viz-notice-link {
    color: #55FFFF;
    text-decoration: none;
    font-weight: 500;
    margin-left: 6px;
}
.viz-notice-link:hover {
    text-decoration: underline;
}
.viz-notice-close {
    background: none;
    border: none;
    color: #666;
    font-size: 18px;
    cursor: pointer;
    padding: 0 0 0 8px;
    line-height: 1;
}
.viz-notice-close:hover {
    color: #FF5555;
}

/* Hide old DOM lyrics - using canvas karaoke now */
.viz-lyrics {
    display: none !important;
}

/* Karaoke canvas layer */
#viz-karaoke {
    z-index: 10;
    pointer-events: none;
}

/* Settings / Avatar picker */
.settings-page {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.avatar-settings-title {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.avatar-settings-required {
    color: #ff5555;
}

.avatar-settings-size-note {
    font-family: 'Amour Stories', sans-serif;
    font-size: 1.5rem;
    color: #ff55ff;
}

.avatar-settings-heading {
    margin: 0;
    color: #ffff55;
    font-family: 'Amour Stories', sans-serif;
    font-size: 1rem;
    font-weight: 400;
}

.avatar-settings-default {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.9rem;
}

.avatar-settings-main {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
}

.avatar-settings-current-preview {
    min-height: 110px;
    min-width: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #5555ff;
    border-radius: 8px;
    background: #000000;
    padding: 0.75rem;
}

.avatar-settings-image {
    display: block;
    image-rendering: pixelated;
    image-rendering: crisp-edges;
}

.avatar-settings-placeholder {
    color: #aaaaaa;
    font-size: 1.70rem;
    line-height: 1.5;
    text-align: center;
}

.avatar-settings-actions {
    display: block;
    min-width: 220px;
}

.avatar-settings-actions .btn {
    display: block;
    width: 100%;
}

.avatar-settings-actions .btn + .btn {
    margin-top: 0.5rem;
}

@media (max-width: 575.98px) {
    .avatar-settings-main {
        flex-direction: column;
    }

    .avatar-settings-actions {
        width: 100%;
        min-width: 0;
    }
}

.avatar-settings-status {
    font-family: 'Amour Stories', sans-serif;
    color: #aaaaaa;
    font-size: 0.84rem;
}

.avatar-settings-status.is-error {
    color: #ff5555;
}

.avatar-settings-status.is-success {
    color: #55ff55;
}

.avatar-settings-status.is-muted {
    color: #aaaaaa;
}

.avatar-settings-modal[hidden] {
    display: none !important;
}

.avatar-settings-modal {
    position: fixed;
    inset: 0;
    z-index: 10020;
}

.avatar-settings-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
}

.avatar-settings-modal-dialog {
    position: relative;
    width: min(980px, calc(100vw - 2rem));
    max-height: calc(100vh - 3rem);
    margin: 1.5rem auto;
    display: flex;
    flex-direction: column;
    background: #000000;
    border: 1px solid #55ffff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 0 0 1px #000000, 0 18px 44px rgba(0, 0, 0, 0.55);
}

.avatar-settings-modal-header,
.avatar-settings-modal-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0.8rem 1rem;
    background: #0000aa;
    border-bottom: 1px solid #55ffff;
}

.avatar-settings-modal-footer {
    background: #000000;
    border-top: 1px solid #55ffff;
    border-bottom: 0;
    justify-content: flex-end;
}

.avatar-settings-modal-body {
    padding: 1rem;
    overflow: auto;
    background: #000000;
}

.avatar-settings-modal-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1rem;
    margin-bottom: 0.9rem;
}

.avatar-settings-field {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    min-width: 260px;
    margin: 0;
}

.avatar-settings-label {
    color: #55ffff;
    font-family: 'Amour Stories', sans-serif;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.avatar-settings-collection-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
}

.avatar-settings-meta-pill {
    display: inline-flex;
    align-items: center;
    border: 1px solid #5555ff;
    border-radius: 999px;
    padding: 0.3rem 0.55rem;
    background: #000000;
    color: #aaaaaa;
    font-family: 'Amour Stories', sans-serif;
    font-size: 1.8rem;
}

.avatar-settings-meta-pill.is-group {
    border-color: #ffff55;
    color: #ffff55;
}

.avatar-settings-meta-pill.is-count {
    border-color: #ff55ff;
    color: #ffffff;
}

.avatar-settings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 0.75rem;
    padding: 0.15rem;
}

.avatar-settings-tile {
    appearance: none;
    -webkit-appearance: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    background: #000000 !important;
    border: 1px solid #555555;
    border-radius: 8px;
    padding: 0.65rem 0.5rem 0.55rem;
    color: #55ffff !important;
    cursor: pointer;
    transition: border-color 0.15s ease, transform 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.avatar-settings-tile:hover {
    border-color: #55ffff;
    transform: translateY(-1px);
}

.avatar-settings-tile.is-selected {
    background: #aaaaaa !important;
    border-color: #ffffff;
    box-shadow: inset 0 0 0 1px #555555;
    color: #000000 !important;
}

.avatar-settings-tile.is-selected .avatar-settings-tile-preview {
    border-color: #ffff55;
}

.avatar-settings-tile.is-selected .avatar-settings-tile-label,
.avatar-settings-tile.is-selected .avatar-settings-tile-index {
    color: #000000 !important;
}

.avatar-settings-tile-preview {
    min-height: 76px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #5555ff;
    border-radius: 6px;
    background: #000000;
    padding: 0.45rem;
}

.avatar-settings-tile-label {
    min-height: 2rem;
    color: #55ffff !important;
    font-family: 'Amour Stories', sans-serif;
    font-size: 1.56rem;
    line-height: 1.35;
    text-align: center;
    word-break: break-word;
}

.avatar-settings-tile-index {
    color: #55ffff !important;
    font-family: 'Amour Stories', sans-serif;
    font-size: 1.56rem;
}

body.avatar-settings-modal-open {
    overflow: hidden;
}

.ae-modal-window.ae-modal-avatar .ae-modal-resize,
.ae-modal-window.ae-modal-avatar .me-action-left,
.ae-modal-window.ae-modal-avatar .me-status-dim {
    display: none;
}

.ae-modal-window.ae-modal-avatar .me-statusbar {
    justify-content: space-between;
}

.ae-modal-window.ae-modal-avatar .me-viewport {
    display: flex;
    align-items: center;
    justify-content: center;
}

.avatar-editor-zoom {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-left: auto;
    margin-right: 0.65rem;
}

.avatar-editor-zoom-btn {
    min-width: 26px;
    border: 1px solid #55ffff;
    border-radius: 4px;
    background: #000000;
    color: #55ffff;
    font-family: 'Amour Stories', sans-serif;
    font-size: 0.9rem;
    line-height: 1;
    padding: 0.2rem 0.35rem;
}

.avatar-editor-zoom-btn:disabled {
    border-color: #555555;
    color: #555555;
}

.avatar-editor-zoom-value {
    min-width: 54px;
    text-align: center;
    color: #ffff55;
    font-family: 'Amour Stories', sans-serif;
    font-size: 0.84rem;
}

@media (max-width: 991px) {
    .avatar-settings-modal-toolbar,
    .avatar-settings-collection-meta {
        flex-direction: column;
        align-items: stretch;
    }

    .avatar-settings-field {
        min-width: 0;
        width: 100%;
    }

    .avatar-settings-modal-dialog {
        width: calc(100vw - 1rem);
        max-height: calc(100vh - 1rem);
        margin: 0.5rem auto;
    }
}

/* ==========================================================================
   Source: root/css/checkbox.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ---------------------------------------------------

Project : CSS Checkbox Switch
Author : Partha Kar (https://www.facebook.com/partha.creativemind)
Version : 1.0
Release Dtae : 15 November, 2017

---------------------------------------------------- */

.checkbox.checbox-switch {
    padding-left: 0;
}

.checkbox.checbox-switch label,
.checkbox-inline.checbox-switch {
    display: inline-block;
    position: relative;
    padding-left: 0;
}
.checkbox.checbox-switch label input,
.checkbox-inline.checbox-switch input {
    display: none;
}
.checkbox.checbox-switch label span,
.checkbox-inline.checbox-switch span {
    width: 35px;
    border-radius: 20px;
    height: 18px;
    border: 1px solid #dbdbdb;
    background-color: rgb(255, 255, 255);
    border-color: rgb(223, 223, 223);
    box-shadow: rgb(223, 223, 223) 0px 0px 0px 0px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
}
.checkbox.checbox-switch label span:before,
.checkbox-inline.checbox-switch span:before {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: rgb(255,255,255);
    content: " ";
    top: 0;
    position: relative;
    left: 0;
    transition: all 0.3s ease;
    box-shadow: 0 1px 4px rgba(0,0,0,0.4);
}
.checkbox.checbox-switch label > input:checked + span:before,
.checkbox-inline.checbox-switch > input:checked + span:before {
    left: 17px;
}

/* Switch Default */
.checkbox.checbox-switch label > input:checked + span,
.checkbox-inline.checbox-switch > input:checked + span {
    background-color: rgb(180, 182, 183);
    border-color: rgb(180, 182, 183);
    box-shadow: rgb(180, 182, 183) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch label > input:checked:disabled + span,
.checkbox-inline.checbox-switch > input:checked:disabled + span {
    background-color: rgb(220, 220, 220);
    border-color: rgb(220, 220, 220);
    box-shadow: rgb(220, 220, 220) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch label > input:disabled + span,
.checkbox-inline.checbox-switch > input:disabled + span {
    background-color: rgb(232,235,238);
    border-color: rgb(255,255,255);
}
.checkbox.checbox-switch label > input:disabled + span:before,
.checkbox-inline.checbox-switch > input:disabled + span:before {
    background-color: rgb(248,249,250);
    border-color: rgb(243, 243, 243);
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
}

/* Switch Light */
.checkbox.checbox-switch.switch-light label > input:checked + span,
.checkbox-inline.checbox-switch.switch-light > input:checked + span {
    background-color: rgb(248,249,250);
    border-color: rgb(248,249,250);
    box-shadow: rgb(248,249,250) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* Switch Dark */
.checkbox.checbox-switch.switch-dark label > input:checked + span,
.checkbox-inline.checbox-switch.switch-dark > input:checked + span {
    background-color: rgb(52,58,64);
    border-color: rgb(52,58,64);
    box-shadow: rgb(52,58,64) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-dark label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-dark > input:checked:disabled + span {
    background-color: rgb(100, 102, 104);
    border-color: rgb(100, 102, 104);
    box-shadow: rgb(100, 102, 104) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* Switch Success */
.checkbox.checbox-switch.switch-success label > input:checked + span,
.checkbox-inline.checbox-switch.switch-success > input:checked + span {
    background-color: rgb(40, 167, 69);
    border-color: rgb(40, 167, 69);
    box-shadow: rgb(40, 167, 69) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-success label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-success > input:checked:disabled + span {
    background-color: rgb(153, 217, 168);
    border-color: rgb(153, 217, 168);
    box-shadow: rgb(153, 217, 168) 0px 0px 0px 8px inset;
}

/* Switch Danger */
.checkbox.checbox-switch.switch-danger label > input:checked + span,
.checkbox-inline.checbox-switch.switch-danger > input:checked + span {
    background-color: rgb(200, 35, 51);
    border-color: rgb(200, 35, 51);
    box-shadow: rgb(200, 35, 51) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-danger label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-danger > input:checked:disabled + span {
    background-color: rgb(216, 119, 129);
    border-color: rgb(216, 119, 129);
    box-shadow: rgb(216, 119, 129) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* Switch Primary */
.checkbox.checbox-switch.switch-primary label > input:checked + span,
.checkbox-inline.checbox-switch.switch-primary > input:checked + span {
    background-color: rgb(0, 105, 217);
    border-color: rgb(0, 105, 217);
    box-shadow: rgb(0, 105, 217) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-primary label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-primary > input:checked:disabled + span {
    background-color: rgb(109, 163, 221);
    border-color: rgb(109, 163, 221);
    box-shadow: rgb(109, 163, 221) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* Switch Info */
.checkbox.checbox-switch.switch-info label > input:checked + span,
.checkbox-inline.checbox-switch.switch-info > input:checked + span {
    background-color: rgb(23, 162, 184);
    border-color: rgb(23, 162, 184);
    box-shadow: rgb(23, 162, 184) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-info label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-info > input:checked:disabled + span {
    background-color: rgb(102, 192, 206);
    border-color: rgb(102, 192, 206);
    box-shadow: rgb(102, 192, 206) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* Switch Warning */
.checkbox.checbox-switch.switch-warning label > input:checked + span,
.checkbox-inline.checbox-switch.switch-warning > input:checked + span {
    background-color: rgb(255, 193, 7);
    border-color: rgb(255, 193, 7);
    box-shadow: rgb(255, 193, 7) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}
.checkbox.checbox-switch.switch-warning label > input:checked:disabled + span,
.checkbox-inline.checbox-switch.switch-warning > input:checked:disabled + span {
    background-color: rgb(226, 195, 102);
    border-color: rgb(226, 195, 102);
    box-shadow: rgb(226, 195, 102) 0px 0px 0px 8px inset;
    transition: border 0.4s ease 0s, box-shadow 0.4s ease 0s, background-color 1.2s ease 0s;
}

/* ==========================================================================
   Source: root/css/custom.css
   Centralized into root/css/portal.css
   ========================================================================== */

/*!
 * bootswatch v3.3.7
 * Homepage: http://bootswatch.com
 * Copyright 2012-2016 Thomas Park
 * Licensed under MIT
 * Based on Bootstrap
*/

/*!
 * Bootstrap v3.3.7 (http://getbootstrap.com)
 * Copyright 2011-2016 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],
template {
    display: none
}

a {
    background-color: transparent
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

mark {
    background: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

img {
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}

pre {
    overflow: auto
}

code,
kbd,
pre,
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type="checkbox"],
input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto
}

input[type="search"] {
    -webkit-appearance: textfield;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto
}

optgroup {
    font-weight: bold
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important;
        text-shadow: none !important
    }
    a,
    a:visited {
        text-decoration: underline
    }
    a[href]:after {
        content: " (" attr(href) ")"
    }
    abbr[title]:after {
        content: " (" attr(title) ")"
    }
    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: ""
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid
    }
    thead {
        display: table-header-group
    }
    tr,
    img {
        page-break-inside: avoid
    }
    img {
        max-width: 100% !important
    }
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3
    }
    h2,
    h3 {
        page-break-after: avoid
    }
    .navbar {
        display: none
    }
    .btn>.caret,
    .dropup>.btn>.caret {
        border-top-color: #000 !important
    }
    .label {
        border: 1px solid #000
    }
    .table {
        border-collapse: collapse !important
    }
    .table td,
    .table th {
        background-color: #fff !important
    }
    .table-bordered th,
    .table-bordered td {
        border: 1px solid #ddd !important
    }
}

.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.glyphicon-asterisk:before {
    content: "\002a"
}

.glyphicon-plus:before {
    content: "\002b"
}

.glyphicon-euro:before,
.glyphicon-eur:before {
    content: "\20ac"
}

.glyphicon-minus:before {
    content: "\2212"
}

.glyphicon-cloud:before {
    content: "\2601"
}

.glyphicon-envelope:before {
    content: "\2709"
}

.glyphicon-pencil:before {
    content: "\270f"
}

.glyphicon-glass:before {
    content: "\e001"
}

.glyphicon-music:before {
    content: "\e002"
}

.glyphicon-search:before {
    content: "\e003"
}

.glyphicon-heart:before {
    content: "\e005"
}

.glyphicon-star:before {
    content: "\e006"
}

.glyphicon-star-empty:before {
    content: "\e007"
}

.glyphicon-user:before {
    content: "\e008"
}

.glyphicon-film:before {
    content: "\e009"
}

.glyphicon-th-large:before {
    content: "\e010"
}

.glyphicon-th:before {
    content: "\e011"
}

.glyphicon-th-list:before {
    content: "\e012"
}

.glyphicon-ok:before {
    content: "\e013"
}

.glyphicon-remove:before {
    content: "\e014"
}

.glyphicon-zoom-in:before {
    content: "\e015"
}

.glyphicon-zoom-out:before {
    content: "\e016"
}

.glyphicon-off:before {
    content: "\e017"
}

.glyphicon-signal:before {
    content: "\e018"
}

.glyphicon-cog:before {
    content: "\e019"
}

.glyphicon-trash:before {
    content: "\e020"
}

.glyphicon-home:before {
    content: "\e021"
}

.glyphicon-file:before {
    content: "\e022"
}

.glyphicon-time:before {
    content: "\e023"
}

.glyphicon-road:before {
    content: "\e024"
}

.glyphicon-download-alt:before {
    content: "\e025"
}

.glyphicon-download:before {
    content: "\e026"
}

.glyphicon-upload:before {
    content: "\e027"
}

.glyphicon-inbox:before {
    content: "\e028"
}

.glyphicon-play-circle:before {
    content: "\e029"
}

.glyphicon-repeat:before {
    content: "\e030"
}

.glyphicon-refresh:before {
    content: "\e031"
}

.glyphicon-list-alt:before {
    content: "\e032"
}

.glyphicon-lock:before {
    content: "\e033"
}

.glyphicon-flag:before {
    content: "\e034"
}

.glyphicon-headphones:before {
    content: "\e035"
}

.glyphicon-volume-off:before {
    content: "\e036"
}

.glyphicon-volume-down:before {
    content: "\e037"
}

.glyphicon-volume-up:before {
    content: "\e038"
}

.glyphicon-qrcode:before {
    content: "\e039"
}

.glyphicon-barcode:before {
    content: "\e040"
}

.glyphicon-tag:before {
    content: "\e041"
}

.glyphicon-tags:before {
    content: "\e042"
}

.glyphicon-book:before {
    content: "\e043"
}

.glyphicon-bookmark:before {
    content: "\e044"
}

.glyphicon-print:before {
    content: "\e045"
}

.glyphicon-camera:before {
    content: "\e046"
}

.glyphicon-font:before {
    content: "\e047"
}

.glyphicon-bold:before {
    content: "\e048"
}

.glyphicon-italic:before {
    content: "\e049"
}

.glyphicon-text-height:before {
    content: "\e050"
}

.glyphicon-text-width:before {
    content: "\e051"
}

.glyphicon-align-left:before {
    content: "\e052"
}

.glyphicon-align-center:before {
    content: "\e053"
}

.glyphicon-align-right:before {
    content: "\e054"
}

.glyphicon-align-justify:before {
    content: "\e055"
}

.glyphicon-list:before {
    content: "\e056"
}

.glyphicon-indent-left:before {
    content: "\e057"
}

.glyphicon-indent-right:before {
    content: "\e058"
}

.glyphicon-facetime-video:before {
    content: "\e059"
}

.glyphicon-picture:before {
    content: "\e060"
}

.glyphicon-map-marker:before {
    content: "\e062"
}

.glyphicon-adjust:before {
    content: "\e063"
}

.glyphicon-tint:before {
    content: "\e064"
}

.glyphicon-edit:before {
    content: "\e065"
}

.glyphicon-share:before {
    content: "\e066"
}

.glyphicon-check:before {
    content: "\e067"
}

.glyphicon-move:before {
    content: "\e068"
}

.glyphicon-step-backward:before {
    content: "\e069"
}

.glyphicon-fast-backward:before {
    content: "\e070"
}

.glyphicon-backward:before {
    content: "\e071"
}

.glyphicon-play:before {
    content: "\e072"
}

.glyphicon-pause:before {
    content: "\e073"
}

.glyphicon-stop:before {
    content: "\e074"
}

.glyphicon-forward:before {
    content: "\e075"
}

.glyphicon-fast-forward:before {
    content: "\e076"
}

.glyphicon-step-forward:before {
    content: "\e077"
}

.glyphicon-eject:before {
    content: "\e078"
}

.glyphicon-chevron-left:before {
    content: "\e079"
}

.glyphicon-chevron-right:before {
    content: "\e080"
}

.glyphicon-plus-sign:before {
    content: "\e081"
}

.glyphicon-minus-sign:before {
    content: "\e082"
}

.glyphicon-remove-sign:before {
    content: "\e083"
}

.glyphicon-ok-sign:before {
    content: "\e084"
}

.glyphicon-question-sign:before {
    content: "\e085"
}

.glyphicon-info-sign:before {
    content: "\e086"
}

.glyphicon-screenshot:before {
    content: "\e087"
}

.glyphicon-remove-circle:before {
    content: "\e088"
}

.glyphicon-ok-circle:before {
    content: "\e089"
}

.glyphicon-ban-circle:before {
    content: "\e090"
}

.glyphicon-arrow-left:before {
    content: "\e091"
}

.glyphicon-arrow-right:before {
    content: "\e092"
}

.glyphicon-arrow-up:before {
    content: "\e093"
}

.glyphicon-arrow-down:before {
    content: "\e094"
}

.glyphicon-share-alt:before {
    content: "\e095"
}

.glyphicon-resize-full:before {
    content: "\e096"
}

.glyphicon-resize-small:before {
    content: "\e097"
}

.glyphicon-exclamation-sign:before {
    content: "\e101"
}

.glyphicon-gift:before {
    content: "\e102"
}

.glyphicon-leaf:before {
    content: "\e103"
}

.glyphicon-fire:before {
    content: "\e104"
}

.glyphicon-eye-open:before {
    content: "\e105"
}

.glyphicon-eye-close:before {
    content: "\e106"
}

.glyphicon-warning-sign:before {
    content: "\e107"
}

.glyphicon-plane:before {
    content: "\e108"
}

.glyphicon-calendar:before {
    content: "\e109"
}

.glyphicon-random:before {
    content: "\e110"
}

.glyphicon-comment:before {
    content: "\e111"
}

.glyphicon-magnet:before {
    content: "\e112"
}

.glyphicon-chevron-up:before {
    content: "\e113"
}

.glyphicon-chevron-down:before {
    content: "\e114"
}

.glyphicon-retweet:before {
    content: "\e115"
}

.glyphicon-shopping-cart:before {
    content: "\e116"
}

.glyphicon-folder-close:before {
    content: "\e117"
}

.glyphicon-folder-open:before {
    content: "\e118"
}

.glyphicon-resize-vertical:before {
    content: "\e119"
}

.glyphicon-resize-horizontal:before {
    content: "\e120"
}

.glyphicon-hdd:before {
    content: "\e121"
}

.glyphicon-bullhorn:before {
    content: "\e122"
}

.glyphicon-bell:before {
    content: "\e123"
}

.glyphicon-certificate:before {
    content: "\e124"
}

.glyphicon-thumbs-up:before {
    content: "\e125"
}

.glyphicon-thumbs-down:before {
    content: "\e126"
}

.glyphicon-hand-right:before {
    content: "\e127"
}

.glyphicon-hand-left:before {
    content: "\e128"
}

.glyphicon-hand-up:before {
    content: "\e129"
}

.glyphicon-hand-down:before {
    content: "\e130"
}

.glyphicon-circle-arrow-right:before {
    content: "\e131"
}

.glyphicon-circle-arrow-left:before {
    content: "\e132"
}

.glyphicon-circle-arrow-up:before {
    content: "\e133"
}

.glyphicon-circle-arrow-down:before {
    content: "\e134"
}

.glyphicon-globe:before {
    content: "\e135"
}

.glyphicon-wrench:before {
    content: "\e136"
}

.glyphicon-tasks:before {
    content: "\e137"
}

.glyphicon-filter:before {
    content: "\e138"
}

.glyphicon-briefcase:before {
    content: "\e139"
}

.glyphicon-fullscreen:before {
    content: "\e140"
}

.glyphicon-dashboard:before {
    content: "\e141"
}

.glyphicon-paperclip:before {
    content: "\e142"
}

.glyphicon-heart-empty:before {
    content: "\e143"
}

.glyphicon-link:before {
    content: "\e144"
}

.glyphicon-phone:before {
    content: "\e145"
}

.glyphicon-pushpin:before {
    content: "\e146"
}

.glyphicon-usd:before {
    content: "\e148"
}

.glyphicon-gbp:before {
    content: "\e149"
}

.glyphicon-sort:before {
    content: "\e150"
}

.glyphicon-sort-by-alphabet:before {
    content: "\e151"
}

.glyphicon-sort-by-alphabet-alt:before {
    content: "\e152"
}

.glyphicon-sort-by-order:before {
    content: "\e153"
}

.glyphicon-sort-by-order-alt:before {
    content: "\e154"
}

.glyphicon-sort-by-attributes:before {
    content: "\e155"
}

.glyphicon-sort-by-attributes-alt:before {
    content: "\e156"
}

.glyphicon-unchecked:before {
    content: "\e157"
}

.glyphicon-expand:before {
    content: "\e158"
}

.glyphicon-collapse-down:before {
    content: "\e159"
}

.glyphicon-collapse-up:before {
    content: "\e160"
}

.glyphicon-log-in:before {
    content: "\e161"
}

.glyphicon-flash:before {
    content: "\e162"
}

.glyphicon-log-out:before {
    content: "\e163"
}

.glyphicon-new-window:before {
    content: "\e164"
}

.glyphicon-record:before {
    content: "\e165"
}

.glyphicon-save:before {
    content: "\e166"
}

.glyphicon-open:before {
    content: "\e167"
}

.glyphicon-saved:before {
    content: "\e168"
}

.glyphicon-import:before {
    content: "\e169"
}

.glyphicon-export:before {
    content: "\e170"
}

.glyphicon-send:before {
    content: "\e171"
}

.glyphicon-floppy-disk:before {
    content: "\e172"
}

.glyphicon-floppy-saved:before {
    content: "\e173"
}

.glyphicon-floppy-remove:before {
    content: "\e174"
}

.glyphicon-floppy-save:before {
    content: "\e175"
}

.glyphicon-floppy-open:before {
    content: "\e176"
}

.glyphicon-credit-card:before {
    content: "\e177"
}

.glyphicon-transfer:before {
    content: "\e178"
}

.glyphicon-cutlery:before {
    content: "\e179"
}

.glyphicon-header:before {
    content: "\e180"
}

.glyphicon-compressed:before {
    content: "\e181"
}

.glyphicon-earphone:before {
    content: "\e182"
}

.glyphicon-phone-alt:before {
    content: "\e183"
}

.glyphicon-tower:before {
    content: "\e184"
}

.glyphicon-stats:before {
    content: "\e185"
}

.glyphicon-sd-video:before {
    content: "\e186"
}

.glyphicon-hd-video:before {
    content: "\e187"
}

.glyphicon-subtitles:before {
    content: "\e188"
}

.glyphicon-sound-stereo:before {
    content: "\e189"
}

.glyphicon-sound-dolby:before {
    content: "\e190"
}

.glyphicon-sound-5-1:before {
    content: "\e191"
}

.glyphicon-sound-6-1:before {
    content: "\e192"
}

.glyphicon-sound-7-1:before {
    content: "\e193"
}

.glyphicon-copyright-mark:before {
    content: "\e194"
}

.glyphicon-registration-mark:before {
    content: "\e195"
}

.glyphicon-cloud-download:before {
    content: "\e197"
}

.glyphicon-cloud-upload:before {
    content: "\e198"
}

.glyphicon-tree-conifer:before {
    content: "\e199"
}

.glyphicon-tree-deciduous:before {
    content: "\e200"
}

.glyphicon-cd:before {
    content: "\e201"
}

.glyphicon-save-file:before {
    content: "\e202"
}

.glyphicon-open-file:before {
    content: "\e203"
}

.glyphicon-level-up:before {
    content: "\e204"
}

.glyphicon-copy:before {
    content: "\e205"
}

.glyphicon-paste:before {
    content: "\e206"
}

.glyphicon-alert:before {
    content: "\e209"
}

.glyphicon-equalizer:before {
    content: "\e210"
}

.glyphicon-king:before {
    content: "\e211"
}

.glyphicon-queen:before {
    content: "\e212"
}

.glyphicon-pawn:before {
    content: "\e213"
}

.glyphicon-bishop:before {
    content: "\e214"
}

.glyphicon-knight:before {
    content: "\e215"
}

.glyphicon-baby-formula:before {
    content: "\e216"
}

.glyphicon-tent:before {
    content: "\26fa"
}

.glyphicon-blackboard:before {
    content: "\e218"
}

.glyphicon-bed:before {
    content: "\e219"
}

.glyphicon-apple:before {
    content: "\f8ff"
}

.glyphicon-erase:before {
    content: "\e221"
}

.glyphicon-hourglass:before {
    content: "\231b"
}

.glyphicon-lamp:before {
    content: "\e223"
}

.glyphicon-duplicate:before {
    content: "\e224"
}

.glyphicon-piggy-bank:before {
    content: "\e225"
}

.glyphicon-scissors:before {
    content: "\e226"
}

.glyphicon-bitcoin:before {
    content: "\e227"
}

.glyphicon-btc:before {
    content: "\e227"
}

.glyphicon-xbt:before {
    content: "\e227"
}

.glyphicon-yen:before {
    content: "\00a5"
}

.glyphicon-jpy:before {
    content: "\00a5"
}

.glyphicon-ruble:before {
    content: "\20bd"
}

.glyphicon-rub:before {
    content: "\20bd"
}

.glyphicon-scale:before {
    content: "\e230"
}

.glyphicon-ice-lolly:before {
    content: "\e231"
}

.glyphicon-ice-lolly-tasted:before {
    content: "\e232"
}

.glyphicon-education:before {
    content: "\e233"
}

.glyphicon-option-horizontal:before {
    content: "\e234"
}

.glyphicon-option-vertical:before {
    content: "\e235"
}

.glyphicon-menu-hamburger:before {
    content: "\e236"
}

.glyphicon-modal-window:before {
    content: "\e237"
}

.glyphicon-oil:before {
    content: "\e238"
}

.glyphicon-grain:before {
    content: "\e239"
}

.glyphicon-sunglasses:before {
    content: "\e240"
}

.glyphicon-text-size:before {
    content: "\e241"
}

.glyphicon-text-color:before {
    content: "\e242"
}

.glyphicon-text-background:before {
    content: "\e243"
}

.glyphicon-object-align-top:before {
    content: "\e244"
}

.glyphicon-object-align-bottom:before {
    content: "\e245"
}

.glyphicon-object-align-horizontal:before {
    content: "\e246"
}

.glyphicon-object-align-left:before {
    content: "\e247"
}

.glyphicon-object-align-vertical:before {
    content: "\e248"
}

.glyphicon-object-align-right:before {
    content: "\e249"
}

.glyphicon-triangle-right:before {
    content: "\e250"
}

.glyphicon-triangle-left:before {
    content: "\e251"
}

.glyphicon-triangle-bottom:before {
    content: "\e252"
}

.glyphicon-triangle-top:before {
    content: "\e253"
}

.glyphicon-console:before {
    content: "\e254"
}

.glyphicon-superscript:before {
    content: "\e255"
}

.glyphicon-subscript:before {
    content: "\e256"
}

.glyphicon-menu-left:before {
    content: "\e257"
}

.glyphicon-menu-right:before {
    content: "\e258"
}

.glyphicon-menu-down:before {
    content: "\e259"
}

.glyphicon-menu-up:before {
    content: "\e260"
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

html {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

body {
	margin: 0;
    font-family: 'Creepster';
    font-size: 18px;
    line-height: 1.42857143;
    color: #c8c8c8;
    background-color: #272b30
}

input,
button,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

a {
    color: #ffffff;
    text-decoration: none
}

a:hover,
a:focus {
    color: #ffffff;
    text-decoration: underline
}

a:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}

figure {
    margin: 0
}

img {
    vertical-align: middle
}

.img-responsive,
.thumbnail>img,
.thumbnail a>img,
.carousel-inner>.item>img,
.carousel-inner>.item>a>img {
    display: block;
    max-width: 100%;
    height: auto
}

.img-rounded {
    border-radius: 6px
}

.img-thumbnail {
    padding: 4px;
    line-height: 1.42857143;
    background-color: #1c1e22;
    border: 1px solid #0c0d0e;
    border-radius: 4px;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    display: inline-block;
    max-width: 100%;
    height: auto
}

.img-circle {
    border-radius: 50%
}

hr {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #1c1e22
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto
}

[role="button"] {
    cursor: pointer
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: 'Creepster';
    font-weight: 500;
    line-height: 1.1;
    color: inherit
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
    font-weight: normal;
    line-height: 1;
    color: #7a8288
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
    margin-top: 20px;
    margin-bottom: 10px
}

h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
    font-size: 65%
}

h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin-top: 10px;
    margin-bottom: 10px
}

h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
    font-size: 75%
}

h1,
.h1 {
    font-size: 36px
}

h2,
.h2 {
    font-size: 30px
}

h3,
.h3 {
    font-size: 24px
}

h4,
.h4 {
    font-size: 18px
}

h5,
.h5 {
    font-size: 14px
}

h6,
.h6 {
    font-size: 12px
}

p {
    margin: 0 0 10px
}

.lead {
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.4
}

@media (min-width:768px) {
    .lead {
        font-size: 21px
    }
}

small,
.small {
    font-size: 85%
}

mark,
.mark {
    background-color: #f89406;
    padding: .2em
}

.text-left {
    text-align: left
}

.text-right {
    text-align: right
}

.text-center {
    text-align: center
}

.text-justify {
    text-align: justify
}

.text-nowrap {
    white-space: nowrap
}

.text-lowercase {
    text-transform: lowercase
}

.text-uppercase {
    text-transform: uppercase
}

.text-capitalize {
    text-transform: capitalize
}

.text-muted {
    color: #7a8288
}

.text-primary {
    color: #7a8288
}

a.text-primary:hover,
a.text-primary:focus {
    color: #62686d
}

.text-success {
    color: #ffffff
}

a.text-success:hover,
a.text-success:focus {
    color: #e6e6e6
}

.text-info {
    color: #ffffff
}

a.text-info:hover,
a.text-info:focus {
    color: #e6e6e6
}

.text-warning {
    color: #ffffff
}

a.text-warning:hover,
a.text-warning:focus {
    color: #e6e6e6
}

.text-danger {
    color: #ffffff
}

a.text-danger:hover,
a.text-danger:focus {
    color: #e6e6e6
}

.bg-primary {
    color: #fff;
    background-color: #7a8288
}

a.bg-primary:hover,
a.bg-primary:focus {
    background-color: #62686d
}

.bg-success {
    background-color: #62c462
}

a.bg-success:hover,
a.bg-success:focus {
    background-color: #42b142
}

.bg-info {
    background-color: #5bc0de
}

a.bg-info:hover,
a.bg-info:focus {
    background-color: #31b0d5
}

.bg-warning {
    background-color: #f89406
}

a.bg-warning:hover,
a.bg-warning:focus {
    background-color: #c67605
}

.bg-danger {
    background-color: #ee5f5b
}

a.bg-danger:hover,
a.bg-danger:focus {
    background-color: #e9322d
}

.page-header {
    padding-bottom: 9px;
    margin: 40px 0 20px;
    border-bottom: 1px solid #1c1e22
}

ul,
ol {
    margin-top: 0;
    margin-bottom: 10px
}

ul ul,
ol ul,
ul ol,
ol ol {
    margin-bottom: 0
}

.list-unstyled {
    padding-left: 0;
    list-style: none
}

.list-inline {
    padding-left: 0;
    list-style: none;
    margin-left: -5px
}

.list-inline>li {
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px
}

dl {
    margin-top: 0;
    margin-bottom: 20px
}

dt,
dd {
    line-height: 1.42857143
}

dt {
    font-weight: bold
}

dd {
    margin-left: 0
}

@media (min-width:768px) {
    .dl-horizontal dt {
        float: left;
        width: 160px;
        clear: left;
        text-align: right;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }
    .dl-horizontal dd {
        margin-left: 180px
    }
}

abbr[title],
abbr[data-original-title] {
    cursor: help;
    border-bottom: 1px dotted #7a8288
}

.initialism {
    font-size: 90%;
    text-transform: uppercase
}

blockquote {
    padding: 10px 20px;
    margin: 0 0 20px;
    font-size: 17.5px;
    border-left: 5px solid #7a8288
}

blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
    margin-bottom: 0
}

blockquote footer,
blockquote small,
blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.42857143;
    color: #7a8288
}

blockquote footer:before,
blockquote small:before,
blockquote .small:before {
    content: '\2014 \00A0'
}

.blockquote-reverse,
blockquote.pull-right {
    padding-right: 15px;
    padding-left: 0;
    border-right: 5px solid #7a8288;
    border-left: 0;
    text-align: right
}

.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
    content: ''
}

.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
    content: '\00A0 \2014'
}

address {
    margin-bottom: 20px;
    font-style: normal;
    line-height: 1.42857143
}

code,
kbd,
pre,

code {
    padding: 2px 4px;
    font-size: 90%;
    color: #c7254e;
    background-color: #f9f2f4;
    border-radius: 4px
}

kbd {
    padding: 2px 4px;
    font-size: 90%;
    color: #ffffff;
    background-color: #333333;
    border-radius: 3px;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25)
}

kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: bold;
    -webkit-box-shadow: none;
    box-shadow: none
}

pre {
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
/*    word-break: break-all;
    word-wrap: break-word; */
    color: #3a3f44;
    background-color: #f5f5f5;
    border: 1px solid #cccccc;
    border-radius: 4px
}

pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0
}

.pre-scrollable {
    max-height: 340px;
    overflow-y: scroll
}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px
}

@media (min-width:768px) {
    .container {
        width: 750px
    }
}

@media (min-width:992px) {
    .container {
        width: 970px
    }
}

@media (min-width:1200px) {
    .container {
        width: 1170px
    }
}

.container-fluid {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px
}

.row {
    margin-left: -15px;
    margin-right: -15px
}

.col-xs-1,
.col-sm-1,
.col-md-1,
.col-lg-1,
.col-xs-2,
.col-sm-2,
.col-md-2,
.col-lg-2,
.col-xs-3,
.col-sm-3,
.col-md-3,
.col-lg-3,
.col-xs-4,
.col-sm-4,
.col-md-4,
.col-lg-4,
.col-xs-5,
.col-sm-5,
.col-md-5,
.col-lg-5,
.col-xs-6,
.col-sm-6,
.col-md-6,
.col-lg-6,
.col-xs-7,
.col-sm-7,
.col-md-7,
.col-lg-7,
.col-xs-8,
.col-sm-8,
.col-md-8,
.col-lg-8,
.col-xs-9,
.col-sm-9,
.col-md-9,
.col-lg-9,
.col-xs-10,
.col-sm-10,
.col-md-10,
.col-lg-10,
.col-xs-11,
.col-sm-11,
.col-md-11,
.col-lg-11,
.col-xs-12,
.col-sm-12,
.col-md-12,
.col-lg-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px
}

.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12 {
    float: left
}

.col-xs-12 {
    width: 100%
}

.col-xs-11 {
    width: 91.66666667%
}

.col-xs-10 {
    width: 83.33333333%
}

.col-xs-9 {
    width: 75%
}

.col-xs-8 {
    width: 66.66666667%
}

.col-xs-7 {
    width: 58.33333333%
}

.col-xs-6 {
    width: 100%;
	position: sticky;
}

.col-xs-5 {
    width: 41.66666667%
}

.col-xs-4 {
    width: 33.33333333%
}

.col-xs-3 {
    width: 25%
}

.col-xs-2 {
    width: 16.66666667%
}

.col-xs-1 {
    width: 8.33333333%
}

.col-xs-pull-12 {
    right: 100%
}

.col-xs-pull-11 {
    right: 91.66666667%
}

.col-xs-pull-10 {
    right: 83.33333333%
}

.col-xs-pull-9 {
    right: 75%
}

.col-xs-pull-8 {
    right: 66.66666667%
}

.col-xs-pull-7 {
    right: 58.33333333%
}

.col-xs-pull-6 {
    right: 50%
}

.col-xs-pull-5 {
    right: 41.66666667%
}

.col-xs-pull-4 {
    right: 33.33333333%
}

.col-xs-pull-3 {
    right: 25%
}

.col-xs-pull-2 {
    right: 16.66666667%
}

.col-xs-pull-1 {
    right: 8.33333333%
}

.col-xs-pull-0 {
    right: auto
}

.col-xs-push-12 {
    left: 100%
}

.col-xs-push-11 {
    left: 91.66666667%
}

.col-xs-push-10 {
    left: 83.33333333%
}

.col-xs-push-9 {
    left: 75%
}

.col-xs-push-8 {
    left: 66.66666667%
}

.col-xs-push-7 {
    left: 58.33333333%
}

.col-xs-push-6 {
    left: 50%
}

.col-xs-push-5 {
    left: 41.66666667%
}

.col-xs-push-4 {
    left: 33.33333333%
}

.col-xs-push-3 {
    left: 25%
}

.col-xs-push-2 {
    left: 16.66666667%
}

.col-xs-push-1 {
    left: 8.33333333%
}

.col-xs-push-0 {
    left: auto
}

.col-xs-offset-12 {
    margin-left: 100%
}

.col-xs-offset-11 {
    margin-left: 91.66666667%
}

.col-xs-offset-10 {
    margin-left: 83.33333333%
}

.col-xs-offset-9 {
    margin-left: 75%
}

.col-xs-offset-8 {
    margin-left: 66.66666667%
}

.col-xs-offset-7 {
    margin-left: 58.33333333%
}

.col-xs-offset-6 {
    margin-left: 50%
}

.col-xs-offset-5 {
    margin-left: 41.66666667%
}

.col-xs-offset-4 {
    margin-left: 33.33333333%
}

.col-xs-offset-3 {
    margin-left: 25%
}

.col-xs-offset-2 {
    margin-left: 16.66666667%
}

.col-xs-offset-1 {
    margin-left: 8.33333333%
}

.col-xs-offset-0 {
    margin-left: 0%
}

@media (min-width:768px) {
    .col-sm-1,
    .col-sm-2,
    .col-sm-3,
    .col-sm-4,
    .col-sm-5,
    .col-sm-6,
    .col-sm-7,
    .col-sm-8,
    .col-sm-9,
    .col-sm-10,
    .col-sm-11,
    .col-sm-12 {
        float: left
    }
    .col-sm-12 {
        width: 100%
    }
    .col-sm-11 {
        width: 91.66666667%
    }
    .col-sm-10 {
        width: 83.33333333%
    }
    .col-sm-9 {
        width: 75%
    }
    .col-sm-8 {
        width: 66.66666667%
    }
    .col-sm-7 {
        width: 58.33333333%
    }
    .col-sm-6 {
        width: 50%
    }
    .col-sm-5 {
        width: 41.66666667%
    }
    .col-sm-4 {
        width: 33.33333333%
    }
    .col-sm-3 {
        width: 25%
    }
    .col-sm-2 {
        width: 16.66666667%
    }
    .col-sm-1 {
        width: 8.33333333%
    }
    .col-sm-pull-12 {
        right: 100%
    }
    .col-sm-pull-11 {
        right: 91.66666667%
    }
    .col-sm-pull-10 {
        right: 83.33333333%
    }
    .col-sm-pull-9 {
        right: 75%
    }
    .col-sm-pull-8 {
        right: 66.66666667%
    }
    .col-sm-pull-7 {
        right: 58.33333333%
    }
    .col-sm-pull-6 {
        right: 50%
    }
    .col-sm-pull-5 {
        right: 41.66666667%
    }
    .col-sm-pull-4 {
        right: 33.33333333%
    }
    .col-sm-pull-3 {
        right: 25%
    }
    .col-sm-pull-2 {
        right: 16.66666667%
    }
    .col-sm-pull-1 {
        right: 8.33333333%
    }
    .col-sm-pull-0 {
        right: auto
    }
    .col-sm-push-12 {
        left: 100%
    }
    .col-sm-push-11 {
        left: 91.66666667%
    }
    .col-sm-push-10 {
        left: 83.33333333%
    }
    .col-sm-push-9 {
        left: 75%
    }
    .col-sm-push-8 {
        left: 66.66666667%
    }
    .col-sm-push-7 {
        left: 58.33333333%
    }
    .col-sm-push-6 {
        left: 50%
    }
    .col-sm-push-5 {
        left: 41.66666667%
    }
    .col-sm-push-4 {
        left: 33.33333333%
    }
    .col-sm-push-3 {
        left: 25%
    }
    .col-sm-push-2 {
        left: 16.66666667%
    }
    .col-sm-push-1 {
        left: 8.33333333%
    }
    .col-sm-push-0 {
        left: auto
    }
    .col-sm-offset-12 {
        margin-left: 100%
    }
    .col-sm-offset-11 {
        margin-left: 91.66666667%
    }
    .col-sm-offset-10 {
        margin-left: 83.33333333%
    }
    .col-sm-offset-9 {
        margin-left: 75%
    }
    .col-sm-offset-8 {
        margin-left: 66.66666667%
    }
    .col-sm-offset-7 {
        margin-left: 58.33333333%
    }
    .col-sm-offset-6 {
        margin-left: 50%
    }
    .col-sm-offset-5 {
        margin-left: 41.66666667%
    }
    .col-sm-offset-4 {
        margin-left: 33.33333333%
    }
    .col-sm-offset-3 {
        margin-left: 25%
    }
    .col-sm-offset-2 {
        margin-left: 16.66666667%
    }
    .col-sm-offset-1 {
        margin-left: 8.33333333%
    }
    .col-sm-offset-0 {
        margin-left: 0%
    }
}

@media (min-width:992px) {
    .col-md-1,
    .col-md-2,
    .col-md-3,
    .col-md-4,
    .col-md-5,
    .col-md-6,
    .col-md-7,
    .col-md-8,
    .col-md-9,
    .col-md-10,
    .col-md-11,
    .col-md-12 {
        float: left
    }
    .col-md-12 {
        width: 100%
    }
    .col-md-11 {
        width: 91.66666667%
    }
    .col-md-10 {
        width: 83.33333333%
    }
    .col-md-9 {
        width: 75%
    }
    .col-md-8 {
        width: 66.66666667%
    }
    .col-md-7 {
        width: 58.33333333%
    }
    .col-md-6 {
        width: 50%
    }
    .col-md-5 {
        width: 41.66666667%
    }
    .col-md-4 {
        width: 33.33333333%
    }
    .col-md-3 {
        width: 25%
    }
    .col-md-2 {
        width: 16.66666667%
    }
    .col-md-1 {
        width: 8.33333333%
    }
    .col-md-pull-12 {
        right: 100%
    }
    .col-md-pull-11 {
        right: 91.66666667%
    }
    .col-md-pull-10 {
        right: 83.33333333%
    }
    .col-md-pull-9 {
        right: 75%
    }
    .col-md-pull-8 {
        right: 66.66666667%
    }
    .col-md-pull-7 {
        right: 58.33333333%
    }
    .col-md-pull-6 {
        right: 50%
    }
    .col-md-pull-5 {
        right: 41.66666667%
    }
    .col-md-pull-4 {
        right: 33.33333333%
    }
    .col-md-pull-3 {
        right: 25%
    }
    .col-md-pull-2 {
        right: 16.66666667%
    }
    .col-md-pull-1 {
        right: 8.33333333%
    }
    .col-md-pull-0 {
        right: auto
    }
    .col-md-push-12 {
        left: 100%
    }
    .col-md-push-11 {
        left: 91.66666667%
    }
    .col-md-push-10 {
        left: 83.33333333%
    }
    .col-md-push-9 {
        left: 75%
    }
    .col-md-push-8 {
        left: 66.66666667%
    }
    .col-md-push-7 {
        left: 58.33333333%
    }
    .col-md-push-6 {
        left: 50%
    }
    .col-md-push-5 {
        left: 41.66666667%
    }
    .col-md-push-4 {
        left: 33.33333333%
    }
    .col-md-push-3 {
        left: 25%
    }
    .col-md-push-2 {
        left: 16.66666667%
    }
    .col-md-push-1 {
        left: 8.33333333%
    }
    .col-md-push-0 {
        left: auto
    }
    .col-md-offset-12 {
        margin-left: 100%
    }
    .col-md-offset-11 {
        margin-left: 91.66666667%
    }
    .col-md-offset-10 {
        margin-left: 83.33333333%
    }
    .col-md-offset-9 {
        margin-left: 75%
    }
    .col-md-offset-8 {
        margin-left: 66.66666667%
    }
    .col-md-offset-7 {
        margin-left: 58.33333333%
    }
    .col-md-offset-6 {
        margin-left: 50%
    }
    .col-md-offset-5 {
        margin-left: 41.66666667%
    }
    .col-md-offset-4 {
        margin-left: 33.33333333%
    }
    .col-md-offset-3 {
        margin-left: 25%
    }
    .col-md-offset-2 {
        margin-left: 16.66666667%
    }
    .col-md-offset-1 {
        margin-left: 8.33333333%
    }
    .col-md-offset-0 {
        margin-left: 0%
    }
}

@media (min-width:1200px) {
    .col-lg-1,
    .col-lg-2,
    .col-lg-3,
    .col-lg-4,
    .col-lg-5,
    .col-lg-6,
    .col-lg-7,
    .col-lg-8,
    .col-lg-9,
    .col-lg-10,
    .col-lg-11,
    .col-lg-12 {
        float: left
    }
    .col-lg-12 {
        width: 100%
    }
    .col-lg-11 {
        width: 91.66666667%
    }
    .col-lg-10 {
        width: 83.33333333%
    }
    .col-lg-9 {
        width: 75%
    }
    .col-lg-8 {
        width: 66.66666667%
    }
    .col-lg-7 {
        width: 58.33333333%
    }
    .col-lg-6 {
        width: 50%
    }
    .col-lg-5 {
        width: 41.66666667%
    }
    .col-lg-4 {
        width: 33.33333333%
    }
    .col-lg-3 {
        width: 25%
    }
    .col-lg-2 {
        width: 16.66666667%
    }
    .col-lg-1 {
        width: 8.33333333%
    }
    .col-lg-pull-12 {
        right: 100%
    }
    .col-lg-pull-11 {
        right: 91.66666667%
    }
    .col-lg-pull-10 {
        right: 83.33333333%
    }
    .col-lg-pull-9 {
        right: 75%
    }
    .col-lg-pull-8 {
        right: 66.66666667%
    }
    .col-lg-pull-7 {
        right: 58.33333333%
    }
    .col-lg-pull-6 {
        right: 50%
    }
    .col-lg-pull-5 {
        right: 41.66666667%
    }
    .col-lg-pull-4 {
        right: 33.33333333%
    }
    .col-lg-pull-3 {
        right: 25%
    }
    .col-lg-pull-2 {
        right: 16.66666667%
    }
    .col-lg-pull-1 {
        right: 8.33333333%
    }
    .col-lg-pull-0 {
        right: auto
    }
    .col-lg-push-12 {
        left: 100%
    }
    .col-lg-push-11 {
        left: 91.66666667%
    }
    .col-lg-push-10 {
        left: 83.33333333%
    }
    .col-lg-push-9 {
        left: 75%
    }
    .col-lg-push-8 {
        left: 66.66666667%
    }
    .col-lg-push-7 {
        left: 58.33333333%
    }
    .col-lg-push-6 {
        left: 50%
    }
    .col-lg-push-5 {
        left: 41.66666667%
    }
    .col-lg-push-4 {
        left: 33.33333333%
    }
    .col-lg-push-3 {
        left: 25%
    }
    .col-lg-push-2 {
        left: 16.66666667%
    }
    .col-lg-push-1 {
        left: 8.33333333%
    }
    .col-lg-push-0 {
        left: auto
    }
    .col-lg-offset-12 {
        margin-left: 100%
    }
    .col-lg-offset-11 {
        margin-left: 91.66666667%
    }
    .col-lg-offset-10 {
        margin-left: 83.33333333%
    }
    .col-lg-offset-9 {
        margin-left: 75%
    }
    .col-lg-offset-8 {
        margin-left: 66.66666667%
    }
    .col-lg-offset-7 {
        margin-left: 58.33333333%
    }
    .col-lg-offset-6 {
        margin-left: 50%
    }
    .col-lg-offset-5 {
        margin-left: 41.66666667%
    }
    .col-lg-offset-4 {
        margin-left: 33.33333333%
    }
    .col-lg-offset-3 {
        margin-left: 25%
    }
    .col-lg-offset-2 {
        margin-left: 16.66666667%
    }
    .col-lg-offset-1 {
        margin-left: 8.33333333%
    }
    .col-lg-offset-0 {
        margin-left: 0%
    }
}

table {
    background-color: #2e3338
}

caption {
    padding-top: 8px;
    padding-bottom: 8px;
    color: #7a8288;
    text-align: left
}

th {
    text-align: left
}

.table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 20px
}

.table>thead>tr>th,
.table>tbody>tr>th,
.table>tfoot>tr>th,
.table>thead>tr>td,
.table>tbody>tr>td,
.table>tfoot>tr>td {
    padding: 8px;
    line-height: 1.42857143;
    vertical-align: top;
    border-top: 1px solid #1c1e22
}

.table>thead>tr>th {
    vertical-align: bottom;
    border-bottom: 2px solid #1c1e22
}

.table>caption+thead>tr:first-child>th,
.table>colgroup+thead>tr:first-child>th,
.table>thead:first-child>tr:first-child>th,
.table>caption+thead>tr:first-child>td,
.table>colgroup+thead>tr:first-child>td,
.table>thead:first-child>tr:first-child>td {
    border-top: 0
}

.table>tbody+tbody {
    border-top: 2px solid #1c1e22
}

.table .table {
    background-color: #272b30
}

.table-condensed>thead>tr>th,
.table-condensed>tbody>tr>th,
.table-condensed>tfoot>tr>th,
.table-condensed>thead>tr>td,
.table-condensed>tbody>tr>td,
.table-condensed>tfoot>tr>td {
    padding: 5px
}

.table-bordered {
    border: 1px solid #1c1e22
}

.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 #1c1e22
}

.table-bordered>thead>tr>th,
.table-bordered>thead>tr>td {
    border-bottom-width: 2px
}

.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: #353a41
}
.striped:nth-of-type(even), .table-striped > tbody > tr:nth-child(odd) > td, .table-striped > tbody > tr:nth-child(odd) > th {
        background: #1c1e22;
}

.table-hover>tbody>tr:hover {
    background-color: #49515a
}

table col[class*="col-"] {
    position: static;
    float: none;
    display: table-column
}

table td[class*="col-"],
table th[class*="col-"] {
    position: static;
    float: none;
    display: table-cell
}

.table>thead>tr>td.active,
.table>tbody>tr>td.active,
.table>tfoot>tr>td.active,
.table>thead>tr>th.active,
.table>tbody>tr>th.active,
.table>tfoot>tr>th.active,
.table>thead>tr.active>td,
.table>tbody>tr.active>td,
.table>tfoot>tr.active>td,
.table>thead>tr.active>th,
.table>tbody>tr.active>th,
.table>tfoot>tr.active>th {
    background-color: #49515a
}

.table-hover>tbody>tr>td.active:hover,
.table-hover>tbody>tr>th.active:hover,
.table-hover>tbody>tr.active:hover>td,
.table-hover>tbody>tr:hover>.active,
.table-hover>tbody>tr.active:hover>th {
    background-color: #3e444c
}

.table>thead>tr>td.success,
.table>tbody>tr>td.success,
.table>tfoot>tr>td.success,
.table>thead>tr>th.success,
.table>tbody>tr>th.success,
.table>tfoot>tr>th.success,
.table>thead>tr.success>td,
.table>tbody>tr.success>td,
.table>tfoot>tr.success>td,
.table>thead>tr.success>th,
.table>tbody>tr.success>th,
.table>tfoot>tr.success>th {
    background-color: #62c462
}

.table-hover>tbody>tr>td.success:hover,
.table-hover>tbody>tr>th.success:hover,
.table-hover>tbody>tr.success:hover>td,
.table-hover>tbody>tr:hover>.success,
.table-hover>tbody>tr.success:hover>th {
    background-color: #4fbd4f
}

.table>thead>tr>td.info,
.table>tbody>tr>td.info,
.table>tfoot>tr>td.info,
.table>thead>tr>th.info,
.table>tbody>tr>th.info,
.table>tfoot>tr>th.info,
.table>thead>tr.info>td,
.table>tbody>tr.info>td,
.table>tfoot>tr.info>td,
.table>thead>tr.info>th,
.table>tbody>tr.info>th,
.table>tfoot>tr.info>th {
    background-color: #5bc0de
}

.table-hover>tbody>tr>td.info:hover,
.table-hover>tbody>tr>th.info:hover,
.table-hover>tbody>tr.info:hover>td,
.table-hover>tbody>tr:hover>.info,
.table-hover>tbody>tr.info:hover>th {
    background-color: #46b8da
}

.table>thead>tr>td.warning,
.table>tbody>tr>td.warning,
.table>tfoot>tr>td.warning,
.table>thead>tr>th.warning,
.table>tbody>tr>th.warning,
.table>tfoot>tr>th.warning,
.table>thead>tr.warning>td,
.table>tbody>tr.warning>td,
.table>tfoot>tr.warning>td,
.table>thead>tr.warning>th,
.table>tbody>tr.warning>th,
.table>tfoot>tr.warning>th {
    background-color: #f89406
}

.table-hover>tbody>tr>td.warning:hover,
.table-hover>tbody>tr>th.warning:hover,
.table-hover>tbody>tr.warning:hover>td,
.table-hover>tbody>tr:hover>.warning,
.table-hover>tbody>tr.warning:hover>th {
    background-color: #df8505
}

.table>thead>tr>td.danger,
.table>tbody>tr>td.danger,
.table>tfoot>tr>td.danger,
.table>thead>tr>th.danger,
.table>tbody>tr>th.danger,
.table>tfoot>tr>th.danger,
.table>thead>tr.danger>td,
.table>tbody>tr.danger>td,
.table>tfoot>tr.danger>td,
.table>thead>tr.danger>th,
.table>tbody>tr.danger>th,
.table>tfoot>tr.danger>th {
    background-color: #ee5f5b
}

.table-hover>tbody>tr>td.danger:hover,
.table-hover>tbody>tr>th.danger:hover,
.table-hover>tbody>tr.danger:hover>td,
.table-hover>tbody>tr:hover>.danger,
.table-hover>tbody>tr.danger:hover>th {
    background-color: #ec4844
}

.table-responsive {
    overflow-x: auto;
    min-height: 0.01%
}

@media screen and (max-width:767px) {
    .table-responsive {
        width: 100%;
        margin-bottom: 15px;
        overflow-y: hidden;
        -ms-overflow-style: -ms-autohiding-scrollbar;
        border: 1px solid #1c1e22
    }
    .table-responsive>.table {
        margin-bottom: 0
    }
    .table-responsive>.table>thead>tr>th,
    .table-responsive>.table>tbody>tr>th,
    .table-responsive>.table>tfoot>tr>th,
    .table-responsive>.table>thead>tr>td,
    .table-responsive>.table>tbody>tr>td,
    .table-responsive>.table>tfoot>tr>td {
        white-space: nowrap
    }
    .table-responsive>.table-bordered {
        border: 0
    }
    .table-responsive>.table-bordered>thead>tr>th:first-child,
    .table-responsive>.table-bordered>tbody>tr>th:first-child,
    .table-responsive>.table-bordered>tfoot>tr>th:first-child,
    .table-responsive>.table-bordered>thead>tr>td:first-child,
    .table-responsive>.table-bordered>tbody>tr>td:first-child,
    .table-responsive>.table-bordered>tfoot>tr>td:first-child {
        border-left: 0
    }
    .table-responsive>.table-bordered>thead>tr>th:last-child,
    .table-responsive>.table-bordered>tbody>tr>th:last-child,
    .table-responsive>.table-bordered>tfoot>tr>th:last-child,
    .table-responsive>.table-bordered>thead>tr>td:last-child,
    .table-responsive>.table-bordered>tbody>tr>td:last-child,
    .table-responsive>.table-bordered>tfoot>tr>td:last-child {
        border-right: 0
    }
    .table-responsive>.table-bordered>tbody>tr:last-child>th,
    .table-responsive>.table-bordered>tfoot>tr:last-child>th,
    .table-responsive>.table-bordered>tbody>tr:last-child>td,
    .table-responsive>.table-bordered>tfoot>tr:last-child>td {
        border-bottom: 0
    }
}

fieldset {
    padding: 0;
    margin: 0;
    border: 0;
    min-width: 0
}

legend {
    display: block;
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
    font-size: 21px;
    line-height: inherit;
    color: #c8c8c8;
    border: 0;
    border-bottom: 1px solid #1c1e22
}

label {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 5px;
    font-weight: bold
}

input[type="search"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

input[type="radio"],
input[type="checkbox"] {
    margin: 4px 0 0;
    margin-top: 1px \9;
    line-height: normal
}

input[type="file"] {
    display: block
}

input[type="range"] {
    display: block;
    width: 100%
}

select[multiple],
select[size] {
    height: auto
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}

output {
    display: block;
    padding-top: 9px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #272b30
}

.form-control {
    display: block;
    width: 100%;
    height: 38px;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #272b30;
    background-color: #ffffff;
    background-image: none;
    border: 1px solid #000000;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s
}

.form-control:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6)
}

.form-control::-moz-placeholder {
    color: #7a8288;
    opacity: 1
}

.form-control:-ms-input-placeholder {
    color: #7a8288
}

.form-control::-webkit-input-placeholder {
    color: #7a8288
}

.form-control::-ms-expand {
    border: 0;
    background-color: transparent
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    background-color: #999999;
    opacity: 1
}

.form-control[disabled],
fieldset[disabled] .form-control {
    cursor: not-allowed
}

textarea.form-control {
    height: auto
}

input[type="search"] {
    -webkit-appearance: none
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    input[type="date"].form-control,
    input[type="time"].form-control,
    input[type="datetime-local"].form-control,
    input[type="month"].form-control {
        line-height: 38px
    }
    input[type="date"].input-sm,
    input[type="time"].input-sm,
    input[type="datetime-local"].input-sm,
    input[type="month"].input-sm,
    .input-group-sm input[type="date"],
    .input-group-sm input[type="time"],
    .input-group-sm input[type="datetime-local"],
    .input-group-sm input[type="month"] {
        line-height: 30px
    }
    input[type="date"].input-lg,
    input[type="time"].input-lg,
    input[type="datetime-local"].input-lg,
    input[type="month"].input-lg,
    .input-group-lg input[type="date"],
    .input-group-lg input[type="time"],
    .input-group-lg input[type="datetime-local"],
    .input-group-lg input[type="month"] {
        line-height: 54px
    }
}

.form-group {
    margin-bottom: 15px
}

.radio,
.checkbox {
    position: relative;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px
}

.radio label,
.checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: normal;
    cursor: pointer
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
    position: absolute;
    margin-left: -20px;
    margin-top: 4px \9
}

.radio+.radio,
.checkbox+.checkbox {
    margin-top: -5px
}

.radio-inline,
.checkbox-inline {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    margin-bottom: 0;
    vertical-align: middle;
    font-weight: normal;
    cursor: pointer
}

.radio-inline+.radio-inline,
.checkbox-inline+.checkbox-inline {
    margin-top: 0;
    margin-left: 10px
}

input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
    cursor: not-allowed
}

.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
    cursor: not-allowed
}

.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
    cursor: not-allowed
}

.form-control-static {
    padding-top: 9px;
    padding-bottom: 9px;
    margin-bottom: 0;
    min-height: 34px
}

.form-control-static.input-lg,
.form-control-static.input-sm {
    padding-left: 0;
    padding-right: 0
}

.input-sm {
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

select.input-sm {
    height: 30px;
    line-height: 30px
}

textarea.input-sm,
select[multiple].input-sm {
    height: auto
}

.form-group-sm .form-control {
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

.form-group-sm select.form-control {
    height: 30px;
    line-height: 30px
}

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
    height: auto
}

.form-group-sm .form-control-static {
    height: 30px;
    min-height: 32px;
    padding: 6px 10px;
    font-size: 12px;
    line-height: 1.5
}

.input-lg {
    height: 54px;
    padding: 14px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px
}

select.input-lg {
    height: 54px;
    line-height: 54px
}

textarea.input-lg,
select[multiple].input-lg {
    height: auto
}

.form-group-lg .form-control {
    height: 54px;
    padding: 14px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px
}

.form-group-lg select.form-control {
    height: 54px;
    line-height: 54px
}

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
    height: auto
}

.form-group-lg .form-control-static {
    height: 54px;
    min-height: 38px;
    padding: 15px 16px;
    font-size: 18px;
    line-height: 1.3333333
}

.has-feedback {
    position: relative
}

.has-feedback .form-control {
    padding-right: 47.5px
}

.form-control-feedback {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    display: block;
    width: 38px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    pointer-events: none
}

.input-lg+.form-control-feedback,
.input-group-lg+.form-control-feedback,
.form-group-lg .form-control+.form-control-feedback {
    width: 54px;
    height: 54px;
    line-height: 54px
}

.input-sm+.form-control-feedback,
.input-group-sm+.form-control-feedback,
.form-group-sm .form-control+.form-control-feedback {
    width: 30px;
    height: 30px;
    line-height: 30px
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
    color: #ffffff
}

.has-success .form-control {
    border-color: #ffffff;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
}

.has-success .form-control:focus {
    border-color: #e6e6e6;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff
}

.has-success .input-group-addon {
    color: #ffffff;
    border-color: #ffffff;
    background-color: #62c462
}

.has-success .form-control-feedback {
    color: #ffffff
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
    color: #ffffff
}

.has-warning .form-control {
    border-color: #ffffff;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
}

.has-warning .form-control:focus {
    border-color: #e6e6e6;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff
}

.has-warning .input-group-addon {
    color: #ffffff;
    border-color: #ffffff;
    background-color: #f89406
}

.has-warning .form-control-feedback {
    color: #ffffff
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
    color: #ffffff
}

.has-error .form-control {
    border-color: #ffffff;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075)
}

.has-error .form-control:focus {
    border-color: #e6e6e6;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff
}

.has-error .input-group-addon {
    color: #ffffff;
    border-color: #ffffff;
    background-color: #ee5f5b
}

.has-error .form-control-feedback {
    color: #ffffff
}

.has-feedback label~.form-control-feedback {
    top: 25px
}

.has-feedback label.sr-only~.form-control-feedback {
    top: 0
}

.help-block {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
    color: #ffffff
}

@media (min-width:768px) {
    .form-inline .form-group {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: middle
    }
    .form-inline .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle
    }
    .form-inline .form-control-static {
        display: inline-block
    }
    .form-inline .input-group {
        display: inline-table;
        vertical-align: middle
    }
    .form-inline .input-group .input-group-addon,
    .form-inline .input-group .input-group-btn,
    .form-inline .input-group .form-control {
        width: auto
    }
    .form-inline .input-group>.form-control {
        width: 100%
    }
    .form-inline .control-label {
        margin-bottom: 0;
        vertical-align: middle
    }
    .form-inline .radio,
    .form-inline .checkbox {
        display: inline-block;
        margin-top: 0;
        margin-bottom: 0;
        vertical-align: middle
    }
    .form-inline .radio label,
    .form-inline .checkbox label {
        padding-left: 0
    }
    .form-inline .radio input[type="radio"],
    .form-inline .checkbox input[type="checkbox"] {
        position: relative;
        margin-left: 0
    }
    .form-inline .has-feedback .form-control-feedback {
        top: 0
    }
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 9px
}

.form-horizontal .radio,
.form-horizontal .checkbox {
    min-height: 29px
}

.form-horizontal .form-group {
    margin-left: -15px;
    margin-right: -15px
}

@media (min-width:768px) {
    .form-horizontal .control-label {
        text-align: right;
        margin-bottom: 0;
        padding-top: 9px
    }
}

.form-horizontal .has-feedback .form-control-feedback {
    right: 15px
}

@media (min-width:768px) {
    .form-horizontal .form-group-lg .control-label {
        padding-top: 15px;
        font-size: 18px
    }
}

@media (min-width:768px) {
    .form-horizontal .form-group-sm .control-label {
        padding-top: 6px;
        font-size: 12px
    }
}

.btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    background-image: none;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}

.btn:hover,
.btn:focus,
.btn.focus {
    color: #ffffff;
    text-decoration: none
}

.btn:active,
.btn.active {
    outline: 0;
    background-image: none;
    -webkit-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.disabled,
.btn[disabled],
fieldset[disabled] .btn {
    cursor: not-allowed;
    opacity: 0.65;
    filter: alpha(opacity=65);
    -webkit-box-shadow: none;
    box-shadow: none
}

a.btn.disabled,
fieldset[disabled] a.btn {
    pointer-events: none
}

.btn-default {
    color: #ffffff;
    background-color: #3a3f44;
    border-color: #3a3f44
}

.btn-default:focus,
.btn-default.focus {
    color: #ffffff;
    background-color: #232628;
    border-color: #000000
}

.btn-default:hover {
    color: #ffffff;
    background-color: #232628;
    border-color: #1e2023
}

.btn-default:active,
.btn-default.active,
.open>.dropdown-toggle.btn-default {
    color: #ffffff;
    background-color: #232628;
    border-color: #1e2023
}

.btn-default:active:hover,
.btn-default.active:hover,
.open>.dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open>.dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open>.dropdown-toggle.btn-default.focus {
    color: #ffffff;
    background-color: #121415;
    border-color: #000000
}

.btn-default:active,
.btn-default.active,
.open>.dropdown-toggle.btn-default {
    background-image: none
}

.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
    background-color: #3a3f44;
    border-color: #3a3f44
}

.btn-default .badge {
    color: #3a3f44;
    background-color: #ffffff
}

.btn-primary {
    color: #ffffff;
    background-color: #7a8288;
    border-color: #7a8288
}

.btn-primary:focus,
.btn-primary.focus {
    color: #ffffff;
    background-color: #62686d;
    border-color: #3e4245
}

.btn-primary:hover {
    color: #ffffff;
    background-color: #62686d;
    border-color: #5d6368
}

.btn-primary:active,
.btn-primary.active,
.open>.dropdown-toggle.btn-primary {
    color: #ffffff;
    background-color: #62686d;
    border-color: #5d6368
}

.btn-primary:active:hover,
.btn-primary.active:hover,
.open>.dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open>.dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open>.dropdown-toggle.btn-primary.focus {
    color: #ffffff;
    background-color: #51565a;
    border-color: #3e4245
}

.btn-primary:active,
.btn-primary.active,
.open>.dropdown-toggle.btn-primary {
    background-image: none
}

.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
    background-color: #7a8288;
    border-color: #7a8288
}

.btn-primary .badge {
    color: #7a8288;
    background-color: #ffffff
}

.btn-success {
    color: #ffffff;
    background-color: #62c462;
    border-color: #62c462
}

.btn-success:focus,
.btn-success.focus {
    color: #ffffff;
    background-color: #42b142;
    border-color: #2d792d
}

.btn-success:hover {
    color: #ffffff;
    background-color: #42b142;
    border-color: #40a940
}

.btn-success:active,
.btn-success.active,
.open>.dropdown-toggle.btn-success {
    color: #ffffff;
    background-color: #42b142;
    border-color: #40a940
}

.btn-success:active:hover,
.btn-success.active:hover,
.open>.dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open>.dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open>.dropdown-toggle.btn-success.focus {
    color: #ffffff;
    background-color: #399739;
    border-color: #2d792d
}

.btn-success:active,
.btn-success.active,
.open>.dropdown-toggle.btn-success {
    background-image: none
}

.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
    background-color: #62c462;
    border-color: #62c462
}

.btn-success .badge {
    color: #62c462;
    background-color: #ffffff
}

.btn-info {
    color: #ffffff;
    background-color: #5bc0de;
    border-color: #5bc0de
}

.btn-info:focus,
.btn-info.focus {
    color: #ffffff;
    background-color: #31b0d5;
    border-color: #1f7e9a
}

.btn-info:hover {
    color: #ffffff;
    background-color: #31b0d5;
    border-color: #2aabd2
}

.btn-info:active,
.btn-info.active,
.open>.dropdown-toggle.btn-info {
    color: #ffffff;
    background-color: #31b0d5;
    border-color: #2aabd2
}

.btn-info:active:hover,
.btn-info.active:hover,
.open>.dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open>.dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open>.dropdown-toggle.btn-info.focus {
    color: #ffffff;
    background-color: #269abc;
    border-color: #1f7e9a
}

.btn-info:active,
.btn-info.active,
.open>.dropdown-toggle.btn-info {
    background-image: none
}

.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
    background-color: #5bc0de;
    border-color: #5bc0de
}

.btn-info .badge {
    color: #5bc0de;
    background-color: #ffffff
}

.btn-warning {
    color: #ffffff;
    background-color: #f89406;
    border-color: #f89406
}

.btn-warning:focus,
.btn-warning.focus {
    color: #ffffff;
    background-color: #c67605;
    border-color: #7c4a03
}

.btn-warning:hover {
    color: #ffffff;
    background-color: #c67605;
    border-color: #bc7005
}

.btn-warning:active,
.btn-warning.active,
.open>.dropdown-toggle.btn-warning {
    color: #ffffff;
    background-color: #c67605;
    border-color: #bc7005
}

.btn-warning:active:hover,
.btn-warning.active:hover,
.open>.dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open>.dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open>.dropdown-toggle.btn-warning.focus {
    color: #ffffff;
    background-color: #a36104;
    border-color: #7c4a03
}

.btn-warning:active,
.btn-warning.active,
.open>.dropdown-toggle.btn-warning {
    background-image: none
}

.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
    background-color: #f89406;
    border-color: #f89406
}

.btn-warning .badge {
    color: #f89406;
    background-color: #ffffff
}

.btn-danger {
    color: #ffffff;
    background-color: #ee5f5b;
    border-color: #ee5f5b
}

.btn-danger:focus,
.btn-danger.focus {
    color: #ffffff;
    background-color: #e9322d;
    border-color: #b71713
}

.btn-danger:hover {
    color: #ffffff;
    background-color: #e9322d;
    border-color: #e82924
}

.btn-danger:active,
.btn-danger.active,
.open>.dropdown-toggle.btn-danger {
    color: #ffffff;
    background-color: #e9322d;
    border-color: #e82924
}

.btn-danger:active:hover,
.btn-danger.active:hover,
.open>.dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open>.dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open>.dropdown-toggle.btn-danger.focus {
    color: #ffffff;
    background-color: #dc1c17;
    border-color: #b71713
}

.btn-danger:active,
.btn-danger.active,
.open>.dropdown-toggle.btn-danger {
    background-image: none
}

.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
    background-color: #ee5f5b;
    border-color: #ee5f5b
}

.btn-danger .badge {
    color: #ee5f5b;
    background-color: #ffffff
}

.btn-link {
    color: #ffffff;
    font-weight: normal;
    border-radius: 0
}

.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none
}

.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
    border-color: transparent
}

.btn-link:hover,
.btn-link:focus {
    color: #ffffff;
    text-decoration: underline;
    background-color: transparent
}

.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
    color: #7a8288;
    text-decoration: none
}

.btn-lg,
.btn-group-lg>.btn {
    padding: 14px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px
}

.btn-sm,
.btn-group-sm>.btn {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

.btn-xs,
.btn-group-xs>.btn {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

.btn-block {
    display: block;
    width: 100%
}

.btn-block+.btn-block {
    margin-top: 5px
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
    width: 100%
}

.fade {
    opacity: 0;
    -webkit-transition: opacity 0.15s linear;
    -o-transition: opacity 0.15s linear;
    transition: opacity 0.15s linear
}

.fade.in {
    opacity: 1
}

.collapse {
    display: none
}

.collapse.in {
    display: block
}

tr.collapse.in {
    display: table-row
}

tbody.collapse.in {
    display: table-row-group
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    -webkit-transition-property: height, visibility;
    -o-transition-property: height, visibility;
    transition-property: height, visibility;
    -webkit-transition-duration: 0.35s;
    -o-transition-duration: 0.35s;
    transition-duration: 0.35s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease
}

.caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 2px;
    vertical-align: middle;
    border-top: 4px dashed;
    border-top: 4px solid \9;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent
}

.dropup,
.dropdown {
    position: relative
}

.dropdown-toggle:focus {
    outline: 0
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 160px;
    padding: 5px 0;
    margin: 2px 0 0;
    list-style: none;
    font-size: 14px;
    text-align: left;
    background-color: #3a3f44;
    border: 1px solid #272b30;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    -webkit-background-clip: padding-box;
    background-clip: padding-box
}

.dropdown-menu.pull-right {
    right: 0;
    left: auto
}

.dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #272b30
}

.dropdown-menu>li>a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857143;
    color: #c8c8c8;
    white-space: nowrap
}

.dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus {
    text-decoration: none;
    color: #ffffff;
    background-color: #272b30
}

.dropdown-menu>.active>a,
.dropdown-menu>.active>a:hover,
.dropdown-menu>.active>a:focus {
    color: #ffffff;
    text-decoration: none;
    outline: 0;
    background-color: #272b30
}

.dropdown-menu>.disabled>a,
.dropdown-menu>.disabled>a:hover,
.dropdown-menu>.disabled>a:focus {
    color: #7a8288
}

.dropdown-menu>.disabled>a:hover,
.dropdown-menu>.disabled>a:focus {
    text-decoration: none;
    background-color: transparent;
    background-image: none;
    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);
    cursor: not-allowed
}

.open>.dropdown-menu {
    display: block
}

.open>a {
    outline: 0
}

.dropdown-menu-right {
    left: auto;
    right: 0
}

.dropdown-menu-left {
    left: 0;
    right: auto
}

.dropdown-header {
    display: block;
    padding: 3px 20px;
    font-size: 12px;
    line-height: 1.42857143;
    color: #7a8288;
    white-space: nowrap
}

.dropdown-backdrop {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 990
}

.pull-right>.dropdown-menu {
    right: 0;
    left: auto
}

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
    border-top: 0;
    border-bottom: 4px dashed;
    border-bottom: 4px solid \9;
    content: ""
}

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin-bottom: 2px
}

@media (min-width:768px) {
    .navbar-right .dropdown-menu {
        left: auto;
        right: 0
    }
    .navbar-right .dropdown-menu-left {
        left: 0;
        right: auto
    }
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: inline-block;
    vertical-align: middle
}

.btn-group>.btn,
.btn-group-vertical>.btn {
    position: relative;
    float: left
}

.btn-group>.btn:hover,
.btn-group-vertical>.btn:hover,
.btn-group>.btn:focus,
.btn-group-vertical>.btn:focus,
.btn-group>.btn:active,
.btn-group-vertical>.btn:active,
.btn-group>.btn.active,
.btn-group-vertical>.btn.active {
    z-index: 2
}

.btn-group .btn+.btn,
.btn-group .btn+.btn-group,
.btn-group .btn-group+.btn,
.btn-group .btn-group+.btn-group {
    margin-left: -1px
}

.btn-toolbar {
    margin-left: -5px
}

.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
    float: left
}

.btn-toolbar>.btn,
.btn-toolbar>.btn-group,
.btn-toolbar>.input-group {
    margin-left: 5px
}

.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
    border-radius: 0
}

.btn-group>.btn:first-child {
    margin-left: 0
}

.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0
}

.btn-group>.btn:last-child:not(:first-child),
.btn-group>.dropdown-toggle:not(:first-child) {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0
}

.btn-group>.btn-group {
    float: left
}

.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn {
    border-radius: 0
}

.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,
.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0
}

.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0
}

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
    outline: 0
}

.btn-group>.btn+.dropdown-toggle {
    padding-left: 8px;
    padding-right: 8px
}

.btn-group>.btn-lg+.dropdown-toggle {
    padding-left: 12px;
    padding-right: 12px
}

.btn-group.open .dropdown-toggle {
    -webkit-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-group.open .dropdown-toggle.btn-link {
    -webkit-box-shadow: none;
    box-shadow: none
}

.btn .caret {
    margin-left: 0
}

.btn-lg .caret {
    border-width: 5px 5px 0;
    border-bottom-width: 0
}

.dropup .btn-lg .caret {
    border-width: 0 5px 5px
}

.btn-group-vertical>.btn,
.btn-group-vertical>.btn-group,
.btn-group-vertical>.btn-group>.btn {
    display: block;
    float: none;
    width: 100%;
    max-width: 100%
}

.btn-group-vertical>.btn-group>.btn {
    float: none
}

.btn-group-vertical>.btn+.btn,
.btn-group-vertical>.btn+.btn-group,
.btn-group-vertical>.btn-group+.btn,
.btn-group-vertical>.btn-group+.btn-group {
    margin-top: -1px;
    margin-left: 0
}

.btn-group-vertical>.btn:not(:first-child):not(:last-child) {
    border-radius: 0
}

.btn-group-vertical>.btn:first-child:not(:last-child) {
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.btn-group-vertical>.btn:last-child:not(:first-child) {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px
}

.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn {
    border-radius: 0
}

.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,
.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child {
    border-top-right-radius: 0;
    border-top-left-radius: 0
}

.btn-group-justified {
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: separate
}

.btn-group-justified>.btn,
.btn-group-justified>.btn-group {
    float: none;
    display: table-cell;
    width: 1%
}

.btn-group-justified>.btn-group .btn {
    width: 100%
}

.btn-group-justified>.btn-group .dropdown-menu {
    left: auto
}

[data-toggle="buttons"]>.btn input[type="radio"],
[data-toggle="buttons"]>.btn-group>.btn input[type="radio"],
[data-toggle="buttons"]>.btn input[type="checkbox"],
[data-toggle="buttons"]>.btn-group>.btn input[type="checkbox"] {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none
}

.input-group {
    position: relative;
    display: table;
    border-collapse: separate
}

.input-group[class*="col-"] {
    float: none;
    padding-left: 0;
    padding-right: 0
}

.input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0
}

.input-group .form-control:focus {
    z-index: 3
}

.input-group-lg>.form-control,
.input-group-lg>.input-group-addon,
.input-group-lg>.input-group-btn>.btn {
    height: 54px;
    padding: 14px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px
}

select.input-group-lg>.form-control,
select.input-group-lg>.input-group-addon,
select.input-group-lg>.input-group-btn>.btn {
    height: 54px;
    line-height: 54px
}

textarea.input-group-lg>.form-control,
textarea.input-group-lg>.input-group-addon,
textarea.input-group-lg>.input-group-btn>.btn,
select[multiple].input-group-lg>.form-control,
select[multiple].input-group-lg>.input-group-addon,
select[multiple].input-group-lg>.input-group-btn>.btn {
    height: auto
}

.input-group-sm>.form-control,
.input-group-sm>.input-group-addon,
.input-group-sm>.input-group-btn>.btn {
    height: 30px;
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px
}

select.input-group-sm>.form-control,
select.input-group-sm>.input-group-addon,
select.input-group-sm>.input-group-btn>.btn {
    height: 30px;
    line-height: 30px
}

textarea.input-group-sm>.form-control,
textarea.input-group-sm>.input-group-addon,
textarea.input-group-sm>.input-group-btn>.btn,
select[multiple].input-group-sm>.form-control,
select[multiple].input-group-sm>.input-group-addon,
select[multiple].input-group-sm>.input-group-btn>.btn {
    height: auto
}

.input-group-addon,
.input-group-btn,
.input-group .form-control {
    display: table-cell
}

.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0
}

.input-group-addon,
.input-group-btn {
    width: 1%;
    white-space: nowrap;
    vertical-align: middle
}

.input-group-addon {
    padding: 8px 12px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1;
    color: #272b30;
    text-align: center;
    background-color: #3a3f44;
    border: 1px solid rgba(0, 0, 0, 0.6);
    border-radius: 4px
}

.input-group-addon.input-sm {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px
}

.input-group-addon.input-lg {
    padding: 14px 16px;
    font-size: 18px;
    border-radius: 6px
}

.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
    margin-top: 0
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child>.btn,
.input-group-btn:first-child>.btn-group>.btn,
.input-group-btn:first-child>.dropdown-toggle,
.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child>.btn-group:not(:last-child)>.btn {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0
}

.input-group-addon:first-child {
    border-right: 0
}

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child>.btn,
.input-group-btn:last-child>.btn-group>.btn,
.input-group-btn:last-child>.dropdown-toggle,
.input-group-btn:first-child>.btn:not(:first-child),
.input-group-btn:first-child>.btn-group:not(:first-child)>.btn {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0
}

.input-group-addon:last-child {
    border-left: 0
}

.input-group-btn {
    position: relative;
    font-size: 0;
    white-space: nowrap
}

.input-group-btn>.btn {
    position: relative
}

.input-group-btn>.btn+.btn {
    margin-left: -1px
}

.input-group-btn>.btn:hover,
.input-group-btn>.btn:focus,
.input-group-btn>.btn:active {
    z-index: 2
}

.input-group-btn:first-child>.btn,
.input-group-btn:first-child>.btn-group {
    margin-right: -1px
}

.input-group-btn:last-child>.btn,
.input-group-btn:last-child>.btn-group {
    z-index: 2;
    margin-left: -1px
}

.nav {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none
}

.nav>li {
    position: relative;
    display: block
}

.nav>li>a {
    position: relative;
    display: block;
    padding: 10px 15px
}

.nav>li>a:hover,
.nav>li>a:focus {
    text-decoration: none;
    background-color: #3e444c
}

.nav>li.disabled>a {
    color: #7a8288
}

.nav>li.disabled>a:hover,
.nav>li.disabled>a:focus {
    color: #7a8288;
    text-decoration: none;
    background-color: transparent;
    cursor: not-allowed
}

.nav .open>a,
.nav .open>a:hover,
.nav .open>a:focus {
    background-color: #3e444c;
    border-color: #ffffff
}

.nav .nav-divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5
}

.nav>li>a>img {
    max-width: none
}

.nav-tabs {
    border-bottom: 1px solid #1c1e22
}

.nav-tabs>li {
    float: left;
    margin-bottom: -1px
}

.nav-tabs>li>a {
    margin-right: 2px;
    line-height: 1.42857143;
    border: 1px solid transparent;
    border-radius: 4px 4px 0 0
}

.nav-tabs>li>a:hover {
    border-color: #1c1e22 #1c1e22 #1c1e22
}

.nav-tabs>li.active>a,
.nav-tabs>li.active>a:hover,
.nav-tabs>li.active>a:focus {
    color: #ffffff;
    background-color: #3e444c;
    border: 1px solid #1c1e22;
    border-bottom-color: transparent;
    cursor: default
}

.nav-tabs.nav-justified {
    width: 100%;
    border-bottom: 0
}

.nav-tabs.nav-justified>li {
    float: none
}

.nav-tabs.nav-justified>li>a {
    text-align: center;
    margin-bottom: 5px
}

.nav-tabs.nav-justified>.dropdown .dropdown-menu {
    top: auto;
    left: auto
}

@media (min-width:768px) {
    .nav-tabs.nav-justified>li {
        display: table-cell;
        width: 1%
    }
    .nav-tabs.nav-justified>li>a {
        margin-bottom: 0
    }
}

.nav-tabs.nav-justified>li>a {
    margin-right: 0;
    border-radius: 4px
}

.nav-tabs.nav-justified>.active>a,
.nav-tabs.nav-justified>.active>a:hover,
.nav-tabs.nav-justified>.active>a:focus {
    border: 1px solid #1c1e22
}

@media (min-width:768px) {
    .nav-tabs.nav-justified>li>a {
        border-bottom: 1px solid #1c1e22;
        border-radius: 4px 4px 0 0
    }
    .nav-tabs.nav-justified>.active>a,
    .nav-tabs.nav-justified>.active>a:hover,
    .nav-tabs.nav-justified>.active>a:focus {
        border-bottom-color: #272b30
    }
}

.nav-pills>li {
    float: left
}

.nav-pills>li>a {
    border-radius: 4px
}

.nav-pills>li+li {
    margin-left: 2px
}

.nav-pills>li.active>a,
.nav-pills>li.active>a:hover,
.nav-pills>li.active>a:focus {
    color: #ffffff;
    background-color: transparent
}

.nav-stacked>li {
    float: none
}

.nav-stacked>li+li {
    margin-top: 2px;
    margin-left: 0
}

.nav-justified {
    width: 100%
}

.nav-justified>li {
    float: none
}

.nav-justified>li>a {
    text-align: center;
    margin-bottom: 5px
}

.nav-justified>.dropdown .dropdown-menu {
    top: auto;
    left: auto
}

@media (min-width:768px) {
    .nav-justified>li {
        display: table-cell;
        width: 1%
    }
    .nav-justified>li>a {
        margin-bottom: 0
    }
}

.nav-tabs-justified {
    border-bottom: 0
}

.nav-tabs-justified>li>a {
    margin-right: 0;
    border-radius: 4px
}

.nav-tabs-justified>.active>a,
.nav-tabs-justified>.active>a:hover,
.nav-tabs-justified>.active>a:focus {
    border: 1px solid #1c1e22
}

@media (min-width:768px) {
    .nav-tabs-justified>li>a {
        border-bottom: 1px solid #1c1e22;
        border-radius: 4px 4px 0 0
    }
    .nav-tabs-justified>.active>a,
    .nav-tabs-justified>.active>a:hover,
    .nav-tabs-justified>.active>a:focus {
        border-bottom-color: #272b30
    }
}

.tab-content>.tab-pane {
    display: none
}

.tab-content>.active {
    display: block
}

.nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-right-radius: 0;
    border-top-left-radius: 0
}

.navbar {
    position: relative;
    min-height: 50px;
    margin-bottom: 20px;
    border: 1px solid transparent
}

@media (min-width:768px) {
    .navbar {
        border-radius: 4px
    }
}

@media (min-width:768px) {
    .navbar-header {
        float: left
    }
}

.navbar-collapse {
    overflow-x: visible;
    padding-right: 15px;
    padding-left: 15px;
    border-top: 1px solid transparent;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
    -webkit-overflow-scrolling: touch
}

.navbar-collapse.in {
    overflow-y: auto
}

@media (min-width:768px) {
    .navbar-collapse {
        width: auto;
        border-top: 0;
        -webkit-box-shadow: none;
        box-shadow: none
    }
    .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important
    }
    .navbar-collapse.in {
        overflow-y: visible
    }
    .navbar-fixed-top .navbar-collapse,
    .navbar-static-top .navbar-collapse,
    .navbar-fixed-bottom .navbar-collapse {
        padding-left: 0;
        padding-right: 0
    }
}

.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
    max-height: 340px
}

@media (max-device-width:480px) and (orientation:landscape) {
    .navbar-fixed-top .navbar-collapse,
    .navbar-fixed-bottom .navbar-collapse {
        max-height: 200px
    }
}

.container>.navbar-header,
.container-fluid>.navbar-header,
.container>.navbar-collapse,
.container-fluid>.navbar-collapse {
    margin-right: -15px;
    margin-left: -15px
}

@media (min-width:768px) {
    .container>.navbar-header,
    .container-fluid>.navbar-header,
    .container>.navbar-collapse,
    .container-fluid>.navbar-collapse {
        margin-right: 0;
        margin-left: 0
    }
}

.navbar-static-top {
    z-index: 1000;
    border-width: 0 0 1px
}

@media (min-width:768px) {
    .navbar-static-top {
        border-radius: 0
    }
}

.navbar-fixed-top,
.navbar-fixed-bottom {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 1030
}

@media (min-width:768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
        border-radius: 0
    }
}

.navbar-fixed-top {
    top: 0;
    border-width: 0 0 1px
}

.navbar-fixed-bottom {
    bottom: 0;
    margin-bottom: 0;
    border-width: 1px 0 0
}

.navbar-brand {
    float: left;
    padding: 15px 15px;
    font-size: 18px;
    line-height: 20px;
    height: 50px
}

.navbar-brand:hover,
.navbar-brand:focus {
    text-decoration: none
}

.navbar-brand>img {
    display: block
}

@media (min-width:768px) {
    .navbar>.container .navbar-brand,
    .navbar>.container-fluid .navbar-brand {
        margin-left: -15px
    }
}

.navbar-toggle {
    position: relative;
    float: right;
    margin-right: 15px;
    padding: 9px 10px;
    margin-top: 8px;
    margin-bottom: 8px;
    background-color: transparent;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px
}

.navbar-toggle:focus {
    outline: 0
}

.navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px
}

.navbar-toggle .icon-bar+.icon-bar {
    margin-top: 4px
}

@media (min-width:768px) {
    .navbar-toggle {
        display: none
    }
}

.navbar-nav {
    margin: 7.5px -15px
}

.navbar-nav>li>a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 20px
}

@media (max-width:767px) {
    .navbar-nav .open .dropdown-menu {
        position: static;
        float: none;
        width: auto;
        margin-top: 0;
        background-color: transparent;
        border: 0;
        -webkit-box-shadow: none;
        box-shadow: none
    }
    .navbar-nav .open .dropdown-menu>li>a,
    .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px
    }
    .navbar-nav .open .dropdown-menu>li>a {
        line-height: 20px
    }
    .navbar-nav .open .dropdown-menu>li>a:hover,
    .navbar-nav .open .dropdown-menu>li>a:focus {
        background-image: none
    }
}

@media (min-width:768px) {
    .navbar-nav {
        float: left;
        margin: 0
    }
    .navbar-nav>li {
        float: left
    }
    .navbar-nav>li>a {
        padding-top: 15px;
        padding-bottom: 15px
    }
}

.navbar-form {
    margin-left: -15px;
    margin-right: -15px;
    padding: 10px 15px;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
    margin-top: 6px;
    margin-bottom: 6px
}

@media (min-width:768px) {
    .navbar-form .form-group {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: middle
    }
    .navbar-form .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle
    }
    .navbar-form .form-control-static {
        display: inline-block
    }
    .navbar-form .input-group {
        display: inline-table;
        vertical-align: middle
    }
    .navbar-form .input-group .input-group-addon,
    .navbar-form .input-group .input-group-btn,
    .navbar-form .input-group .form-control {
        width: auto
    }
    .navbar-form .input-group>.form-control {
        width: 100%
    }
    .navbar-form .control-label {
        margin-bottom: 0;
        vertical-align: middle
    }
    .navbar-form .radio,
    .navbar-form .checkbox {
        display: inline-block;
        margin-top: 0;
        margin-bottom: 0;
        vertical-align: middle
    }
    .navbar-form .radio label,
    .navbar-form .checkbox label {
        padding-left: 0
    }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
        position: relative;
        margin-left: 0
    }
    .navbar-form .has-feedback .form-control-feedback {
        top: 0
    }
}

@media (max-width:767px) {
    .navbar-form .form-group {
        margin-bottom: 5px
    }
    .navbar-form .form-group:last-child {
        margin-bottom: 0
    }
}

@media (min-width:768px) {
    .navbar-form {
        width: auto;
        border: 0;
        margin-left: 0;
        margin-right: 0;
        padding-top: 0;
        padding-bottom: 0;
        -webkit-box-shadow: none;
        box-shadow: none
    }
}

.navbar-nav>li>.dropdown-menu {
    margin-top: 0;
    border-top-right-radius: 0;
    border-top-left-radius: 0
}

.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu {
    margin-bottom: 0;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

.navbar-btn {
    margin-top: 6px;
    margin-bottom: 6px
}

.navbar-btn.btn-sm {
    margin-top: 10px;
    margin-bottom: 10px
}

.navbar-btn.btn-xs {
    margin-top: 14px;
    margin-bottom: 14px
}

.navbar-text {
    margin-top: 15px;
    margin-bottom: 15px
}

@media (min-width:768px) {
    .navbar-text {
        float: left;
        margin-left: 15px;
        margin-right: 15px
    }
}

@media (min-width:768px) {
    .navbar-left {
        float: left !important
    }
    .navbar-right {
        float: right !important;
        margin-right: -15px
    }
    .navbar-right~.navbar-right {
        margin-right: 0
    }
}

.navbar-default {
    background-color: #3a3f44;
    border-color: #2b2e32
}

.navbar-default .navbar-brand {
    color: #c8c8c8
}

.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #ffffff;
    background-color: none
}

.navbar-default .navbar-text {
    color: #c8c8c8
}

.navbar-default .navbar-nav>li>a {
    color: #c8c8c8
}

.navbar-default .navbar-nav>li>a:hover,
.navbar-default .navbar-nav>li>a:focus {
    color: #ffffff;
    background-color: #272b2e
}

.navbar-default .navbar-nav>.active>a,
.navbar-default .navbar-nav>.active>a:hover,
.navbar-default .navbar-nav>.active>a:focus {
    color: #ffffff;
    background-color: #272b2e
}

.navbar-default .navbar-nav>.disabled>a,
.navbar-default .navbar-nav>.disabled>a:hover,
.navbar-default .navbar-nav>.disabled>a:focus {
    color: #cccccc;
    background-color: transparent
}

.navbar-default .navbar-toggle {
    border-color: #272b2e
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #272b2e
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: #c8c8c8
}

.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
    border-color: #2b2e32
}

.navbar-default .navbar-nav>.open>a,
.navbar-default .navbar-nav>.open>a:hover,
.navbar-default .navbar-nav>.open>a:focus {
    background-color: #272b2e;
    color: #ffffff
}

@media (max-width:767px) {
    .navbar-default .navbar-nav .open .dropdown-menu>li>a {
        color: #c8c8c8
    }
    .navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus {
        color: #ffffff;
        background-color: #272b2e
    }
    .navbar-default .navbar-nav .open .dropdown-menu>.active>a,
    .navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus {
        color: #ffffff;
        background-color: #272b2e
    }
    .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,
    .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,
    .navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus {
        color: #cccccc;
        background-color: transparent
    }
}

.navbar-default .navbar-link {
    color: #c8c8c8
}

.navbar-default .navbar-link:hover {
    color: #ffffff
}

.navbar-default .btn-link {
    color: #c8c8c8
}

.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
    color: #ffffff
}

.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
    color: #cccccc
}

.navbar-inverse {
    background-color: #7a8288;
    border-color: #62686d
}

.navbar-inverse .navbar-brand {
    color: #cccccc
}

.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
    color: #ffffff;
    background-color: none
}

.navbar-inverse .navbar-text {
    color: #cccccc
}

.navbar-inverse .navbar-nav>li>a {
    color: #cccccc
}

.navbar-inverse .navbar-nav>li>a:hover,
.navbar-inverse .navbar-nav>li>a:focus {
    color: #ffffff;
    background-color: #5d6368
}

.navbar-inverse .navbar-nav>.active>a,
.navbar-inverse .navbar-nav>.active>a:hover,
.navbar-inverse .navbar-nav>.active>a:focus {
    color: #ffffff;
    background-color: #5d6368
}

.navbar-inverse .navbar-nav>.disabled>a,
.navbar-inverse .navbar-nav>.disabled>a:hover,
.navbar-inverse .navbar-nav>.disabled>a:focus {
    color: #cccccc;
    background-color: transparent
}

.navbar-inverse .navbar-toggle {
    border-color: #5d6368
}

.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
    background-color: #5d6368
}

.navbar-inverse .navbar-toggle .icon-bar {
    background-color: #ffffff
}

.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
    border-color: #697075
}

.navbar-inverse .navbar-nav>.open>a,
.navbar-inverse .navbar-nav>.open>a:hover,
.navbar-inverse .navbar-nav>.open>a:focus {
    background-color: #5d6368;
    color: #ffffff
}

@media (max-width:767px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header {
        border-color: #62686d
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
        background-color: #62686d
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
        color: #cccccc
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,
    .navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus {
        color: #ffffff;
        background-color: #5d6368
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,
    .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,
    .navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus {
        color: #ffffff;
        background-color: #5d6368
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,
    .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,
    .navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus {
        color: #cccccc;
        background-color: transparent
    }
}

.navbar-inverse .navbar-link {
    color: #cccccc
}

.navbar-inverse .navbar-link:hover {
    color: #ffffff
}

.navbar-inverse .btn-link {
    color: #cccccc
}

.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
    color: #ffffff
}

.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
    color: #cccccc
}

.breadcrumb {
    padding: 8px 15px;
    margin-bottom: 20px;
    list-style: none;
    background-color: transparent;
    border-radius: 4px
}

.breadcrumb>li {
    display: inline-block
}

.breadcrumb>li+li:before {
    content: "/\00a0";
    padding: 0 5px;
    color: #cccccc
}

.breadcrumb>.active {
    color: #7a8288
}

.pagination {
    display: inline-block;
    padding-left: 0;
    margin: 20px 0;
    border-radius: 4px
}

.pagination>li {
    display: inline
}

.pagination>li>a,
.pagination>li>span {
    position: relative;
    float: left;
    padding: 8px 12px;
    line-height: 1.42857143;
    text-decoration: none;
    color: #ffffff;
    background-color: #3a3f44;
    border: 1px solid rgba(0, 0, 0, 0.6);
    margin-left: -1px
}

.pagination>li:first-child>a,
.pagination>li:first-child>span {
    margin-left: 0;
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px
}

.pagination>li:last-child>a,
.pagination>li:last-child>span {
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px
}

.pagination>li>a:hover,
.pagination>li>span:hover,
.pagination>li>a:focus,
.pagination>li>span:focus {
    z-index: 2;
    color: #ffffff;
    background-color: transparent;
    border-color: rgba(0, 0, 0, 0.6)
}

.pagination>.active>a,
.pagination>.active>span,
.pagination>.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus {
    z-index: 3;
    color: #ffffff;
    background-color: #232628;
    border-color: rgba(0, 0, 0, 0.6);
    cursor: default
}

.pagination>.disabled>span,
.pagination>.disabled>span:hover,
.pagination>.disabled>span:focus,
.pagination>.disabled>a,
.pagination>.disabled>a:hover,
.pagination>.disabled>a:focus {
    color: #7a8288;
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.6);
    cursor: not-allowed
}

.pagination-lg>li>a,
.pagination-lg>li>span {
    padding: 14px 16px;
    font-size: 18px;
    line-height: 1.3333333
}

.pagination-lg>li:first-child>a,
.pagination-lg>li:first-child>span {
    border-bottom-left-radius: 6px;
    border-top-left-radius: 6px
}

.pagination-lg>li:last-child>a,
.pagination-lg>li:last-child>span {
    border-bottom-right-radius: 6px;
    border-top-right-radius: 6px
}

.pagination-sm>li>a,
.pagination-sm>li>span {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5
}

.pagination-sm>li:first-child>a,
.pagination-sm>li:first-child>span {
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px
}

.pagination-sm>li:last-child>a,
.pagination-sm>li:last-child>span {
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px
}

.pager {
    padding-left: 0;
    margin: 20px 0;
    list-style: none;
    text-align: center
}

.pager li {
    display: inline
}

.pager li>a,
.pager li>span {
    display: inline-block;
    padding: 5px 14px;
    background-color: #3a3f44;
    border: 1px solid rgba(0, 0, 0, 0.6);
    border-radius: 15px
}

.pager li>a:hover,
.pager li>a:focus {
    text-decoration: none;
    background-color: transparent
}

.pager .next>a,
.pager .next>span {
    float: right
}

.pager .previous>a,
.pager .previous>span {
    float: left
}

.pager .disabled>a,
.pager .disabled>a:hover,
.pager .disabled>a:focus,
.pager .disabled>span {
    color: #7a8288;
    background-color: #3a3f44;
    cursor: not-allowed
}

.label {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: bold;
    line-height: 1;
    color: #ffffff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25em
}

a.label:hover,
a.label:focus {
    color: #ffffff;
    text-decoration: none;
    cursor: pointer
}

.label:empty {
    display: none
}

.btn .label {
    position: relative;
    top: -1px
}

.label-default {
    background-color: #3a3f44
}

.label-default[href]:hover,
.label-default[href]:focus {
    background-color: #232628
}

.label-primary {
    background-color: #7a8288
}

.label-primary[href]:hover,
.label-primary[href]:focus {
    background-color: #62686d
}

.label-success {
    background-color: #62c462
}

.label-success[href]:hover,
.label-success[href]:focus {
    background-color: #42b142
}

.label-info {
    background-color: #5bc0de
}

.label-info[href]:hover,
.label-info[href]:focus {
    background-color: #31b0d5
}

.label-warning {
    background-color: #f89406
}

.label-warning[href]:hover,
.label-warning[href]:focus {
    background-color: #c67605
}

.label-danger {
    background-color: #ee5f5b
}

.label-danger[href]:hover,
.label-danger[href]:focus {
    background-color: #e9322d
}

.badge {
    display: inline-block;
    min-width: 10px;
    padding: 3px 7px;
    font-size: 12px;
    font-weight: bold;
    color: #ffffff;
    line-height: 1;
    vertical-align: middle;
    white-space: nowrap;
    text-align: center;
    background-color: #7a8288;
    border-radius: 10px
}

.badge:empty {
    display: none
}

.btn .badge {
    position: relative;
    top: -1px
}

.btn-xs .badge,
.btn-group-xs>.btn .badge {
    top: 0;
    padding: 1px 5px
}

a.badge:hover,
a.badge:focus {
    color: #ffffff;
    text-decoration: none;
    cursor: pointer
}

.list-group-item.active>.badge,
.nav-pills>.active>a>.badge {
    color: #ffffff;
    background-color: #7a8288
}

.list-group-item>.badge {
    float: right
}

.list-group-item>.badge+.badge {
    margin-right: 5px
}

.nav-pills>li>a>.badge {
    margin-left: 3px
}

.jumbotron {
    padding-top: 30px;
    padding-bottom: 30px;
    margin-bottom: 30px;
    color: inherit;
    background-color: #1c1e22
}

.jumbotron h1,
.jumbotron .h1 {
    color: inherit
}

.jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200
}

.jumbotron>hr {
    border-top-color: #050506
}

.container .jumbotron,
.container-fluid .jumbotron {
    border-radius: 6px;
    padding-left: 15px;
    padding-right: 15px
}

.jumbotron .container {
    max-width: 100%
}

@media screen and (min-width:768px) {
    .jumbotron {
        padding-top: 48px;
        padding-bottom: 48px
    }
    .container .jumbotron,
    .container-fluid .jumbotron {
        padding-left: 60px;
        padding-right: 60px
    }
    .jumbotron h1,
    .jumbotron .h1 {
        font-size: 63px
    }
}

.thumbnail {
    display: block;
    padding: 4px;
    margin-bottom: 20px;
    line-height: 1.42857143;
    background-color: #1c1e22;
    border: 1px solid #0c0d0e;
    border-radius: 4px;
    -webkit-transition: border .2s ease-in-out;
    -o-transition: border .2s ease-in-out;
    transition: border .2s ease-in-out
}

.thumbnail>img,
.thumbnail a>img {
    margin-left: auto;
    margin-right: auto
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
    border-color: #ffffff
}

.thumbnail .caption {
    padding: 9px;
    color: #c8c8c8
}

.alert {
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 4px
}

.alert h4 {
    margin-top: 0;
    color: inherit
}

.alert .alert-link {
    font-weight: bold
}

.alert>p,
.alert>ul {
    margin-bottom: 0
}

.alert>p+p {
    margin-top: 5px
}

.alert-dismissable,
.alert-dismissible {
    padding-right: 35px
}

.alert-dismissable .close,
.alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit
}

.alert-success {
    background-color: #62c462;
    border-color: #62bd4f;
    color: #ffffff
}

.alert-success hr {
    border-top-color: #55b142
}

.alert-success .alert-link {
    color: #e6e6e6
}

.alert-info {
    background-color: #5bc0de;
    border-color: #3dced8;
    color: #ffffff
}

.alert-info hr {
    border-top-color: #2ac7d2
}

.alert-info .alert-link {
    color: #e6e6e6
}

.alert-warning {
    background-color: #f89406;
    border-color: #e96506;
    color: #ffffff
}

.alert-warning hr {
    border-top-color: #d05a05
}

.alert-warning .alert-link {
    color: #e6e6e6
}

.alert-danger {
    background-color: #ee5f5b;
    border-color: #ed4d63;
    color: #ffffff
}

.alert-danger hr {
    border-top-color: #ea364f
}

.alert-danger .alert-link {
    color: #e6e6e6
}

@-webkit-keyframes progress-bar-stripes {
    from {
        background-position: 40px 0
    }
    to {
        background-position: 0 0
    }
}

@-o-keyframes progress-bar-stripes {
    from {
        background-position: 40px 0
    }
    to {
        background-position: 0 0
    }
}

@keyframes progress-bar-stripes {
    from {
        background-position: 40px 0
    }
    to {
        background-position: 0 0
    }
}

.progress {
    overflow: hidden;
    height: 20px;
    margin-bottom: 20px;
    background-color: #1c1e22;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1)
}

.progress-bar {
    float: left;
    width: 0%;
    height: 100%;
    font-size: 12px;
    line-height: 20px;
    color: #ffffff;
    text-align: center;
    background-color: #7a8288;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -webkit-transition: width 0.6s ease;
    -o-transition: width 0.6s ease;
    transition: width 0.6s ease
}

.progress-striped .progress-bar,
.progress-bar-striped {
    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);
    -webkit-background-size: 40px 40px;
    background-size: 40px 40px
}

.progress.active .progress-bar,
.progress-bar.active {
    -webkit-animation: progress-bar-stripes 2s linear infinite;
    -o-animation: progress-bar-stripes 2s linear infinite;
    animation: progress-bar-stripes 2s linear infinite
}

.progress-bar-success {
    background-color: #62c462
}

.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-info {
    background-color: #5bc0de
}

.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-warning {
    background-color: #f89406
}

.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-danger {
    background-color: #ee5f5b
}

.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)
}

.media {
    margin-top: 15px
}

.media:first-child {
    margin-top: 0
}

.media,
.media-body {
    zoom: 1;
    overflow: hidden
}

.media-body {
    width: 10000px
}

.media-object {
    display: block
}

.media-object.img-thumbnail {
    max-width: none
}

.media-right,
.media>.pull-right {
    padding-left: 10px
}

.media-left,
.media>.pull-left {
    padding-right: 10px
}

.media-left,
.media-right,
.media-body {
    display: table-cell;
    vertical-align: top
}

.media-middle {
    vertical-align: middle
}

.media-bottom {
    vertical-align: bottom
}

.media-heading {
    margin-top: 0;
    margin-bottom: 5px
}

.media-list {
    padding-left: 0;
    list-style: none
}

.list-group {
    margin-bottom: 20px;
    padding-left: 0
}

.list-group-item {
    position: relative;
    display: block;
    padding: 10px 15px;
    margin-bottom: -1px;
    background-color: #32383e;
    border: 1px solid rgba(0, 0, 0, 0.6)
}

.list-group-item:first-child {
    border-top-right-radius: 4px;
    border-top-left-radius: 4px
}

.list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px
}

a.list-group-item,
button.list-group-item {
    color: #c8c8c8
}

a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
    color: #ffffff
}

a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus,
a.list-group-item:active, 
li.list-group-item.mail:hover {
    text-decoration: none;
    color: #c8c8c8;
    background-color: rgba(23, 124, 210, 0.6)
}

button.list-group-item {
    width: 100%;
    text-align: left
}

.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
    background-color: #999999;
    color: #7a8288;
    cursor: not-allowed
}

.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
    color: inherit
}

.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
    color: #7a8288
}

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
    z-index: 2;
    color: #ffffff;
    background-color: #3e444c;
    border-color: rgba(0, 0, 0, 0.6)
}

.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading>small,
.list-group-item.active:hover .list-group-item-heading>small,
.list-group-item.active:focus .list-group-item-heading>small,
.list-group-item.active .list-group-item-heading>.small,
.list-group-item.active:hover .list-group-item-heading>.small,
.list-group-item.active:focus .list-group-item-heading>.small {
    color: inherit
}

.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
    color: #a2aab4
}

.list-group-item-success {
    color: #ffffff;
    background-color: #62c462
}

a.list-group-item-success,
button.list-group-item-success {
    color: #ffffff
}

a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
    color: inherit
}

a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
    color: #ffffff;
    background-color: #4fbd4f
}

a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #ffffff;
    border-color: #ffffff
}

.list-group-item-info {
    color: #ffffff;
    background-color: #5bc0de
}

a.list-group-item-info,
button.list-group-item-info {
    color: #ffffff
}

a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
    color: inherit
}

a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
    color: #ffffff;
    background-color: #46b8da
}

a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #ffffff;
    border-color: #ffffff
}

.list-group-item-warning {
    color: #ffffff;
    background-color: #f89406
}

a.list-group-item-warning,
button.list-group-item-warning {
    color: #ffffff
}

a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
    color: inherit
}

a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
    color: #ffffff;
    background-color: #df8505
}

a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #ffffff;
    border-color: #ffffff
}

.list-group-item-danger {
    color: #ffffff;
    background-color: #ee5f5b
}

a.list-group-item-danger,
button.list-group-item-danger {
    color: #ffffff
}

a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
    color: inherit
}

a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
    color: #ffffff;
    background-color: #ec4844
}

a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #ffffff;
    border-color: #ffffff
}

.list-group-item-heading {
    margin-top: 0;
    margin-bottom: 5px
}

.list-group-item-text {
    margin-bottom: 0;
    line-height: 1.3
}

.panel {
    margin-bottom: 20px;
    background-color: #2e3338;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05)
}

.panel-body {
    padding: 15px
}

.panel-heading {
    padding: 10px 15px;
    border-bottom: 1px solid transparent;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px
}

.panel-heading>.dropdown .dropdown-toggle {
    color: inherit
}

.panel-title {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 16px;
    color: inherit
}

.panel-title>a,
.panel-title>small,
.panel-title>.small,
.panel-title>small>a,
.panel-title>.small>a {
    color: inherit
}

.panel-footer {
    padding: 10px 15px;
    background-color: #3e444c;
    border-top: 1px solid rgba(0, 0, 0, 0.6);
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px
}

.panel>.list-group,
.panel>.panel-collapse>.list-group {
    margin-bottom: 0
}

.panel>.list-group .list-group-item,
.panel>.panel-collapse>.list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0
}

.panel>.list-group:first-child .list-group-item:first-child,
.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px
}

.panel>.list-group:last-child .list-group-item:last-child,
.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px
}

.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child {
    border-top-right-radius: 0;
    border-top-left-radius: 0
}

.panel-heading+.list-group .list-group-item:first-child {
    border-top-width: 0
}

.list-group+.panel-footer {
    border-top-width: 0
}

.panel>.table,
.panel>.table-responsive>.table,
.panel>.panel-collapse>.table {
    margin-bottom: 0
}

.panel>.table caption,
.panel>.table-responsive>.table caption,
.panel>.panel-collapse>.table caption {
    padding-left: 15px;
    padding-right: 15px
}

.panel>.table:first-child,
.panel>.table-responsive:first-child>.table:first-child {
    border-top-right-radius: 3px;
    border-top-left-radius: 3px
}

.panel>.table:first-child>thead:first-child>tr:first-child,
.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,
.panel>.table:first-child>tbody:first-child>tr:first-child,
.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px
}

.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,
.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,
.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,
.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,
.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,
.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,
.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,
.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child {
    border-top-left-radius: 3px
}

.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,
.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,
.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,
.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,
.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,
.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,
.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,
.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child {
    border-top-right-radius: 3px
}

.panel>.table:last-child,
.panel>.table-responsive:last-child>.table:last-child {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px
}

.panel>.table:last-child>tbody:last-child>tr:last-child,
.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,
.panel>.table:last-child>tfoot:last-child>tr:last-child,
.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child {
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px
}

.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,
.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,
.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,
.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,
.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,
.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,
.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,
.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child {
    border-bottom-left-radius: 3px
}

.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,
.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,
.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,
.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,
.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,
.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,
.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,
.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child {
    border-bottom-right-radius: 3px
}

.panel>.panel-body+.table,
.panel>.panel-body+.table-responsive,
.panel>.table+.panel-body,
.panel>.table-responsive+.panel-body {
    border-top: 1px solid #1c1e22
}

.panel>.table>tbody:first-child>tr:first-child th,
.panel>.table>tbody:first-child>tr:first-child td {
    border-top: 0
}

.panel>.table-bordered,
.panel>.table-responsive>.table-bordered {
    border: 0
}

.panel>.table-bordered>thead>tr>th:first-child,
.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,
.panel>.table-bordered>tbody>tr>th:first-child,
.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,
.panel>.table-bordered>tfoot>tr>th:first-child,
.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,
.panel>.table-bordered>thead>tr>td:first-child,
.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,
.panel>.table-bordered>tbody>tr>td:first-child,
.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,
.panel>.table-bordered>tfoot>tr>td:first-child,
.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child {
    border-left: 0
}

.panel>.table-bordered>thead>tr>th:last-child,
.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,
.panel>.table-bordered>tbody>tr>th:last-child,
.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,
.panel>.table-bordered>tfoot>tr>th:last-child,
.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,
.panel>.table-bordered>thead>tr>td:last-child,
.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,
.panel>.table-bordered>tbody>tr>td:last-child,
.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,
.panel>.table-bordered>tfoot>tr>td:last-child,
.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child {
    border-right: 0
}

.panel>.table-bordered>thead>tr:first-child>td,
.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,
.panel>.table-bordered>tbody>tr:first-child>td,
.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,
.panel>.table-bordered>thead>tr:first-child>th,
.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,
.panel>.table-bordered>tbody>tr:first-child>th,
.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th {
    border-bottom: 0
}

.panel>.table-bordered>tbody>tr:last-child>td,
.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,
.panel>.table-bordered>tfoot>tr:last-child>td,
.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,
.panel>.table-bordered>tbody>tr:last-child>th,
.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,
.panel>.table-bordered>tfoot>tr:last-child>th,
.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th {
    border-bottom: 0
}

.panel>.table-responsive {
    border: 0;
    margin-bottom: 0
}

.panel-group {
    margin-bottom: 20px
}

.panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px
}

.panel-group .panel+.panel {
    margin-top: 5px
}

.panel-group .panel-heading {
    border-bottom: 0
}

.panel-group .panel-heading+.panel-collapse>.panel-body,
.panel-group .panel-heading+.panel-collapse>.list-group {
    border-top: 1px solid rgba(0, 0, 0, 0.6)
}

.panel-group .panel-footer {
    border-top: 0
}

.panel-group .panel-footer+.panel-collapse .panel-body {
    border-bottom: 1px solid rgba(0, 0, 0, 0.6)
}

.panel-default {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-default>.panel-heading {
    color: #c8c8c8;
    background-color: #3e444c;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-default>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-default>.panel-heading .badge {
    color: #3e444c;
    background-color: #c8c8c8
}

.panel-default>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.panel-primary {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-primary>.panel-heading {
    color: #ffffff;
    background-color: #7a8288;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-primary>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-primary>.panel-heading .badge {
    color: #7a8288;
    background-color: #ffffff
}

.panel-primary>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.panel-success {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-success>.panel-heading {
    color: #ffffff;
    background-color: #62c462;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-success>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-success>.panel-heading .badge {
    color: #62c462;
    background-color: #ffffff
}

.panel-success>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.panel-info {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-info>.panel-heading {
    color: #ffffff;
    background-color: #5bc0de;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-info>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-info>.panel-heading .badge {
    color: #5bc0de;
    background-color: #ffffff
}

.panel-info>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.panel-warning {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-warning>.panel-heading {
    color: #ffffff;
    background-color: #f89406;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-warning>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-warning>.panel-heading .badge {
    color: #f89406;
    background-color: #ffffff
}

.panel-warning>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.panel-danger {
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-danger>.panel-heading {
    color: #ffffff;
    background-color: #ee5f5b;
    border-color: rgba(0, 0, 0, 0.6)
}

.panel-danger>.panel-heading+.panel-collapse>.panel-body {
    border-top-color: rgba(0, 0, 0, 0.6)
}

.panel-danger>.panel-heading .badge {
    color: #ee5f5b;
    background-color: #ffffff
}

.panel-danger>.panel-footer+.panel-collapse>.panel-body {
    border-bottom-color: rgba(0, 0, 0, 0.6)
}

.embed-responsive {
    position: relative;
    display: block;
    height: 0;
    padding: 0;
    overflow: hidden
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0
}

.embed-responsive-16by9 {
    padding-bottom: 56.25%
}

.embed-responsive-4by3 {
    padding-bottom: 75%
}

.well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    background-color: #1c1e22;
    border: 1px solid #0c0d0e;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05)
}

.well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15)
}

.well-lg {
    padding: 24px;
    border-radius: 6px
}

.well-sm {
    padding: 9px;
    border-radius: 3px
}

.close {
    float: right;
    font-size: 21px;
    font-weight: bold;
    line-height: 1;
    color: #000000;
    text-shadow: 0 1px 0 #ffffff;
    opacity: 0.2;
    filter: alpha(opacity=20)
}

.close:hover,
.close:focus {
    color: #000000;
    text-decoration: none;
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50)
}

button.close {
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
    -webkit-appearance: none
}

.modal-open {
    overflow: hidden
}

.modal {
    display: none;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0
}

.modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    -o-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform .3s ease-out;
    -o-transition: -o-transform .3s ease-out;
    transition: transform .3s ease-out
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0)
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px
}

.modal-content {
    position: relative;
    background-color: #2e3338;
    border: 1px solid #999999;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000000
}

.modal-backdrop.fade {
    opacity: 0;
    filter: alpha(opacity=0)
}

.modal-backdrop.in {
    opacity: 0.5;
    filter: alpha(opacity=50)
}

.modal-header {
    padding: 15px;
    border-bottom: 1px solid #1c1e22
}

.modal-header .close {
    margin-top: -2px
}

.modal-title {
    margin: 0;
    line-height: 1.42857143
}

.modal-body {
    position: relative;
    padding: 20px
}

.modal-footer {
    padding: 20px;
    text-align: right;
    border-top: 1px solid #1c1e22
}

.modal-footer .btn+.btn {
    margin-left: 5px;
    margin-bottom: 0
}

.modal-footer .btn-group .btn+.btn {
    margin-left: -1px
}

.modal-footer .btn-block+.btn-block {
    margin-left: 0
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

@media (min-width:768px) {
    .modal-dialog {
        width: 600px;
        margin: 30px auto
    }
    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5)
    }
    .modal-sm {
        width: 300px
    }
}

@media (min-width:992px) {
    .modal-lg {
        width: 900px
    }
}

.tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: normal;
    letter-spacing: normal;
    line-break: auto;
    line-height: 1.42857143;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    word-wrap: normal;
    font-size: 12px;
    opacity: 0;
    filter: alpha(opacity=0)
}

.tooltip.in {
    opacity: 0.9;
    filter: alpha(opacity=90)
}

.tooltip.top {
    margin-top: -3px;
    padding: 5px 0
}

.tooltip.right {
    margin-left: 3px;
    padding: 0 5px
}

.tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0
}

.tooltip.left {
    margin-left: -3px;
    padding: 0 5px
}

.tooltip-inner {
    max-width: 200px;
    padding: 3px 8px;
    color: #ffffff;
    text-align: center;
    background-color: #000000;
    border-radius: 4px
}

.tooltip-arrow {
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid
}

.tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000000
}

.tooltip.top-left .tooltip-arrow {
    bottom: 0;
    right: 5px;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000000
}

.tooltip.top-right .tooltip-arrow {
    bottom: 0;
    left: 5px;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000000
}

.tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-width: 5px 5px 5px 0;
    border-right-color: #000000
}

.tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-width: 5px 0 5px 5px;
    border-left-color: #000000
}

.tooltip.bottom .tooltip-arrow {
    top: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000000
}

.tooltip.bottom-left .tooltip-arrow {
    top: 0;
    right: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000000
}

.tooltip.bottom-right .tooltip-arrow {
    top: 0;
    left: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000000
}

.popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    max-width: 276px;
    padding: 1px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-style: normal;
    font-weight: normal;
    letter-spacing: normal;
    line-break: auto;
    line-height: 1.42857143;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    word-wrap: normal;
    font-size: 14px;
    background-color: #2e3338;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #999999;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2)
}

.popover.top {
    margin-top: -10px
}

.popover.right {
    margin-left: 10px
}

.popover.bottom {
    margin-top: 10px
}

.popover.left {
    margin-left: -10px
}

.popover-title {
    margin: 0;
    padding: 8px 14px;
    font-size: 14px;
    background-color: #2e3338;
    border-bottom: 1px solid #22262a;
    border-radius: 5px 5px 0 0
}

.popover-content {
    padding: 9px 14px
}

.popover>.arrow,
.popover>.arrow:after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid
}

.popover>.arrow {
    border-width: 11px
}

.popover>.arrow:after {
    border-width: 10px;
    content: ""
}

.popover.top>.arrow {
    left: 50%;
    margin-left: -11px;
    border-bottom-width: 0;
    border-top-color: #666666;
    border-top-color: rgba(0, 0, 0, 0.25);
    bottom: -11px
}

.popover.top>.arrow:after {
    content: " ";
    bottom: 1px;
    margin-left: -10px;
    border-bottom-width: 0;
    border-top-color: #2e3338
}

.popover.right>.arrow {
    top: 50%;
    left: -11px;
    margin-top: -11px;
    border-left-width: 0;
    border-right-color: #666666;
    border-right-color: rgba(0, 0, 0, 0.25)
}

.popover.right>.arrow:after {
    content: " ";
    left: 1px;
    bottom: -10px;
    border-left-width: 0;
    border-right-color: #2e3338
}

.popover.bottom>.arrow {
    left: 50%;
    margin-left: -11px;
    border-top-width: 0;
    border-bottom-color: #666666;
    border-bottom-color: rgba(0, 0, 0, 0.25);
    top: -11px
}

.popover.bottom>.arrow:after {
    content: " ";
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #2e3338
}

.popover.left>.arrow {
    top: 50%;
    right: -11px;
    margin-top: -11px;
    border-right-width: 0;
    border-left-color: #666666;
    border-left-color: rgba(0, 0, 0, 0.25)
}

.popover.left>.arrow:after {
    content: " ";
    right: 1px;
    border-right-width: 0;
    border-left-color: #2e3338;
    bottom: -10px
}

.carousel {
    position: relative
}

.carousel-inner {
    position: relative;
    overflow: hidden;
    width: 100%
}

.carousel-inner>.item {
    display: none;
    position: relative;
    -webkit-transition: .6s ease-in-out left;
    -o-transition: .6s ease-in-out left;
    transition: .6s ease-in-out left
}

.carousel-inner>.item>img,
.carousel-inner>.item>a>img {
    line-height: 1
}

@media all and (transform-3d),
(-webkit-transform-3d) {
    .carousel-inner>.item {
        -webkit-transition: -webkit-transform .6s ease-in-out;
        -o-transition: -o-transform .6s ease-in-out;
        transition: transform .6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-perspective: 1000px;
        perspective: 1000px
    }
    .carousel-inner>.item.next,
    .carousel-inner>.item.active.right {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        left: 0
    }
    .carousel-inner>.item.prev,
    .carousel-inner>.item.active.left {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        left: 0
    }
    .carousel-inner>.item.next.left,
    .carousel-inner>.item.prev.right,
    .carousel-inner>.item.active {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        left: 0
    }
}

.carousel-inner>.active,
.carousel-inner>.next,
.carousel-inner>.prev {
    display: block
}

.carousel-inner>.active {
    left: 0
}

.carousel-inner>.next,
.carousel-inner>.prev {
    position: absolute;
    top: 0;
    width: 100%
}

.carousel-inner>.next {
    left: 100%
}

.carousel-inner>.prev {
    left: -100%
}

.carousel-inner>.next.left,
.carousel-inner>.prev.right {
    left: 0
}

.carousel-inner>.active.left {
    left: -100%
}

.carousel-inner>.active.right {
    left: 100%
}

.carousel-control {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 15%;
    opacity: 0.5;
    filter: alpha(opacity=50);
    font-size: 20px;
    color: #ffffff;
    text-align: center;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
    background-color: rgba(0, 0, 0, 0)
}

.carousel-control.left {
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)
}

.carousel-control.right {
    left: auto;
    right: 0;
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)
}

.carousel-control:hover,
.carousel-control:focus {
    outline: 0;
    color: #ffffff;
    text-decoration: none;
    opacity: 0.9;
    filter: alpha(opacity=90)
}

.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    z-index: 5;
    display: inline-block
}

.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px
}

.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px
}

.carousel-control .icon-prev,
.carousel-control .icon-next {
    width: 20px;
    height: 20px;
    line-height: 1;
    font-family: serif
}

.carousel-control .icon-prev:before {
    content: '\2039'
}

.carousel-control .icon-next:before {
    content: '\203a'
}

.carousel-indicators {
    position: absolute;
    bottom: 10px;
    left: 50%;
    z-index: 15;
    width: 60%;
    margin-left: -30%;
    padding-left: 0;
    list-style: none;
    text-align: center
}

.carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    border: 1px solid #ffffff;
    border-radius: 10px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: rgba(0, 0, 0, 0)
}

.carousel-indicators .active {
    margin: 0;
    width: 12px;
    height: 12px;
    background-color: #ffffff
}

.carousel-caption {
    position: absolute;
    left: 15%;
    right: 15%;
    bottom: 20px;
    z-index: 10;
    padding-top: 20px;
    padding-bottom: 20px;
    color: #ffffff;
    text-align: center;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6)
}

.carousel-caption .btn {
    text-shadow: none
}

@media screen and (min-width:768px) {
    .carousel-control .glyphicon-chevron-left,
    .carousel-control .glyphicon-chevron-right,
    .carousel-control .icon-prev,
    .carousel-control .icon-next {
        width: 30px;
        height: 30px;
        margin-top: -10px;
        font-size: 30px
    }
    .carousel-control .glyphicon-chevron-left,
    .carousel-control .icon-prev {
        margin-left: -10px
    }
    .carousel-control .glyphicon-chevron-right,
    .carousel-control .icon-next {
        margin-right: -10px
    }
    .carousel-caption {
        left: 20%;
        right: 20%;
        padding-bottom: 30px
    }
    .carousel-indicators {
        bottom: 20px
    }
}

.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical>.btn-group:before,
.btn-group-vertical>.btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after {
    content: " ";
    display: table
}

.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical>.btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after {
    clear: both
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.pull-right {
    float: right !important
}

.pull-left {
    float: left !important
}

.hide {
    display: none !important
}

.show {
    display: block !important
}

.invisible {
    visibility: hidden
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.hidden {
    display: none !important
}

.affix {
    position: fixed
}

@-ms-viewport {
    width: device-width
}

.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
    display: none !important
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
    display: none !important
}

@media (max-width:767px) {
    .visible-xs {
        display: block !important
    }
    table.visible-xs {
        display: table !important
    }
    tr.visible-xs {
        display: table-row !important
    }
    th.visible-xs,
    td.visible-xs {
        display: table-cell !important
    }
}

@media (max-width:767px) {
    .visible-xs-block {
        display: block !important
    }
}

@media (max-width:767px) {
    .visible-xs-inline {
        display: inline !important
    }
}

@media (max-width:767px) {
    .visible-xs-inline-block {
        display: inline-block !important
    }
}

@media (min-width:768px) and (max-width:991px) {
    .visible-sm {
        display: block !important
    }
    table.visible-sm {
        display: table !important
    }
    tr.visible-sm {
        display: table-row !important
    }
    th.visible-sm,
    td.visible-sm {
        display: table-cell !important
    }
}

@media (min-width:768px) and (max-width:991px) {
    .visible-sm-block {
        display: block !important
    }
}

@media (min-width:768px) and (max-width:991px) {
    .visible-sm-inline {
        display: inline !important
    }
}

@media (min-width:768px) and (max-width:991px) {
    .visible-sm-inline-block {
        display: inline-block !important
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .visible-md {
        display: block !important
    }
    table.visible-md {
        display: table !important
    }
    tr.visible-md {
        display: table-row !important
    }
    th.visible-md,
    td.visible-md {
        display: table-cell !important
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .visible-md-block {
        display: block !important
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .visible-md-inline {
        display: inline !important
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .visible-md-inline-block {
        display: inline-block !important
    }
}

@media (min-width:1200px) {
    .visible-lg {
        display: block !important
    }
    table.visible-lg {
        display: table !important
    }
    tr.visible-lg {
        display: table-row !important
    }
    th.visible-lg,
    td.visible-lg {
        display: table-cell !important
    }
}

@media (min-width:1200px) {
    .visible-lg-block {
        display: block !important
    }
}

@media (min-width:1200px) {
    .visible-lg-inline {
        display: inline !important
    }
}

@media (min-width:1200px) {
    .visible-lg-inline-block {
        display: inline-block !important
    }
}

@media (max-width:767px) {
    .hidden-xs {
        display: none !important
    }
}

@media (min-width:768px) and (max-width:991px) {
    .hidden-sm {
        display: none !important
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .hidden-md {
        display: none !important
    }
}

@media (min-width:1200px) {
    .hidden-lg {
        display: none !important
    }
}

.visible-print {
    display: none !important
}

@media print {
    .visible-print {
        display: block !important
    }
    table.visible-print {
        display: table !important
    }
    tr.visible-print {
        display: table-row !important
    }
    th.visible-print,
    td.visible-print {
        display: table-cell !important
    }
}

.visible-print-block {
    display: none !important
}

@media print {
    .visible-print-block {
        display: block !important
    }
}

.visible-print-inline {
    display: none !important
}

@media print {
    .visible-print-inline {
        display: inline !important
    }
}

.visible-print-inline-block {
    display: none !important
}

@media print {
    .visible-print-inline-block {
        display: inline-block !important
    }
}

@media print {
    .hidden-print {
        display: none !important
    }
}

.navbar-default,
.navbar-inverse {
    border: 1px solid rgba(0, 0, 0, 0.6);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3)
}

@media (min-width:768px) {
    .navbar-default .navbar-nav>li>a,
    .navbar-inverse .navbar-nav>li>a {
        border-right: 1px solid rgba(0, 0, 0, 0.2);
        border-left: 1px solid rgba(255, 255, 255, 0.1)
    }
    .navbar-default .navbar-nav>li>a:hover,
    .navbar-inverse .navbar-nav>li>a:hover {
        border-left-color: transparent
    }
    .navbar-default .nav .open>a,
    .navbar-inverse .nav .open>a {
        border-color: transparent
    }
    .navbar-default .navbar-nav>li.active>a,
    .navbar-inverse .navbar-nav>li.active>a {
        border-left-color: transparent
    }
    .navbar-default .navbar-form,
    .navbar-inverse .navbar-form {
        margin-left: 5px;
        margin-right: 5px
    }
}

.navbar-default {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.navbar-default .navbar-nav>li>a:hover {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.navbar-inverse {
    background-image: -webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-image: -o-linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d));
    background-image: linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.navbar-inverse .badge {
    background-color: #5d6368
}

.navbar-inverse .navbar-nav>li>a:hover {
    background-image: -webkit-linear-gradient(#404448, #4e5458 40%, #53595d);
    background-image: -o-linear-gradient(#404448, #4e5458 40%, #53595d);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d));
    background-image: linear-gradient(#404448, #4e5458 40%, #53595d);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn,
.btn:hover {
    border-color: rgba(0, 0, 0, 0.6);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3)
}

.btn-default {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-default:hover {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-primary {
    background-image: -webkit-linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-image: -o-linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#8a9196), color-stop(60%, #7a8288), to(#70787d));
    background-image: linear-gradient(#8a9196, #7a8288 60%, #70787d);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff8a9196', endColorstr='#ff70787d', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-primary:hover {
    background-image: -webkit-linear-gradient(#404448, #4e5458 40%, #53595d);
    background-image: -o-linear-gradient(#404448, #4e5458 40%, #53595d);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#404448), color-stop(40%, #4e5458), to(#53595d));
    background-image: linear-gradient(#404448, #4e5458 40%, #53595d);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff404448', endColorstr='#ff53595d', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-success {
    background-image: -webkit-linear-gradient(#78cc78, #62c462 60%, #53be53);
    background-image: -o-linear-gradient(#78cc78, #62c462 60%, #53be53);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#78cc78), color-stop(60%, #62c462), to(#53be53));
    background-image: linear-gradient(#78cc78, #62c462 60%, #53be53);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff78cc78', endColorstr='#ff53be53', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-success:hover {
    background-image: -webkit-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);
    background-image: -o-linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#2f7d2f), color-stop(40%, #379337), to(#3a9a3a));
    background-image: linear-gradient(#2f7d2f, #379337 40%, #3a9a3a);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff2f7d2f', endColorstr='#ff3a9a3a', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-info {
    background-image: -webkit-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);
    background-image: -o-linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#74cae3), color-stop(60%, #5bc0de), to(#4ab9db));
    background-image: linear-gradient(#74cae3, #5bc0de 60%, #4ab9db);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff74cae3', endColorstr='#ff4ab9db', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-info:hover {
    background-image: -webkit-linear-gradient(#20829f, #2596b8 40%, #279dc1);
    background-image: -o-linear-gradient(#20829f, #2596b8 40%, #279dc1);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#20829f), color-stop(40%, #2596b8), to(#279dc1));
    background-image: linear-gradient(#20829f, #2596b8 40%, #279dc1);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff20829f', endColorstr='#ff279dc1', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-warning {
    background-image: -webkit-linear-gradient(#faa123, #f89406 60%, #e48806);
    background-image: -o-linear-gradient(#faa123, #f89406 60%, #e48806);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#faa123), color-stop(60%, #f89406), to(#e48806));
    background-image: linear-gradient(#faa123, #f89406 60%, #e48806);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fffaa123', endColorstr='#ffe48806', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-warning:hover {
    background-image: -webkit-linear-gradient(#804d03, #9e5f04 40%, #a86404);
    background-image: -o-linear-gradient(#804d03, #9e5f04 40%, #a86404);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#804d03), color-stop(40%, #9e5f04), to(#a86404));
    background-image: linear-gradient(#804d03, #9e5f04 40%, #a86404);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff804d03', endColorstr='#ffa86404', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-danger {
    background-image: -webkit-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);
    background-image: -o-linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f17a77), color-stop(60%, #ee5f5b), to(#ec4d49));
    background-image: linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fff17a77', endColorstr='#ffec4d49', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-danger:hover {
    background-image: -webkit-linear-gradient(#bb1813, #d71c16 40%, #e01d17);
    background-image: -o-linear-gradient(#bb1813, #d71c16 40%, #e01d17);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#bb1813), color-stop(40%, #d71c16), to(#e01d17));
    background-image: linear-gradient(#bb1813, #d71c16 40%, #e01d17);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffbb1813', endColorstr='#ffe01d17', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.btn-link,
.btn-link:hover {
    border-color: transparent
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3)
}

.text-primary,
.text-primary:hover {
    color: #7a8288
}

.text-success,
.text-success:hover {
    color: #62c462
}

.text-danger,
.text-danger:hover {
    color: #ee5f5b
}

.text-warning,
.text-warning:hover {
    color: #f89406
}

.text-info,
.text-info:hover {
    color: #5bc0de
}

.table .success,
.table .warning,
.table .danger,
.table .info {
    color: #fff
}

.table-bordered tbody tr.success td,
.table-bordered tbody tr.warning td,
.table-bordered tbody tr.danger td,
.table-bordered tbody tr.success:hover td,
.table-bordered tbody tr.warning:hover td,
.table-bordered tbody tr.danger:hover td {
    border-color: #1c1e22
}

.table-responsive>.table {
    background-color: #2e3338
}

input,
textarea {
    color: #272b30
}

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label,
.has-warning .form-control-feedback {
    color: #f89406
}

.has-warning .form-control,
.has-warning .form-control:focus {
    border-color: #f89406
}

.has-warning .input-group-addon {
    border-color: rgba(0, 0, 0, 0.6)
}

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label,
.has-error .form-control-feedback {
    color: #ee5f5b
}

.has-error .form-control,
.has-error .form-control:focus {
    border-color: #ee5f5b
}

.has-error .input-group-addon {
    border-color: rgba(0, 0, 0, 0.6)
}

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label,
.has-success .form-control-feedback {
    color: #62c462
}

.has-success .form-control,
.has-success .form-control:focus {
    border-color: #62c462
}

.has-success .input-group-addon {
    border-color: rgba(0, 0, 0, 0.6)
}

legend {
    color: #fff
}

.input-group-addon {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
    color: #ffffff
}

.nav .open>a,
.nav .open>a:hover,
.nav .open>a:focus {
    border-color: rgba(0, 0, 0, 0.6)
}

.nav-pills>li>a {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none;
    border: 1px solid rgba(0, 0, 0, 0.6);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3)
}

.nav-pills>li>a:hover {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none;
    border: 1px solid rgba(0, 0, 0, 0.6)
}

.nav-pills>li.active>a,
.nav-pills>li.active>a:hover {
    background-color: none;
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none;
    border: 1px solid rgba(0, 0, 0, 0.6)
}

.nav-pills>li.disabled>a,
.nav-pills>li.disabled>a:hover {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pagination>li>a,
.pagination>li>span {
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pagination>li>a:hover,
.pagination>li>span:hover {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pagination>li.active>a,
.pagination>li.active>span {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pagination>li.disabled>a,
.pagination>li.disabled>a:hover,
.pagination>li.disabled>span,
.pagination>li.disabled>span:hover {
    background-color: transparent;
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pager>li>a {
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3)
}

.pager>li>a:hover {
    background-image: -webkit-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -o-linear-gradient(#020202, #101112 40%, #141618);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#020202), color-stop(40%, #101112), to(#141618));
    background-image: linear-gradient(#020202, #101112 40%, #141618);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff020202', endColorstr='#ff141618', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.pager>li.disabled>a,
.pager>li.disabled>a:hover {
    background-color: transparent;
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.breadcrumb {
    border: 1px solid rgba(0, 0, 0, 0.6);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3);
    background-image: -webkit-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -o-linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#484e55), color-stop(60%, #3a3f44), to(#313539));
    background-image: linear-gradient(#484e55, #3a3f44 60%, #313539);
    background-repeat: no-repeat;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff484e55', endColorstr='#ff313539', GradientType=0);
    -webkit-filter: none;
    filter: none
}

.alert .alert-link,
.alert a {
    color: #fff;
    text-decoration: underline
}

.alert .close {
    color: #000000;
    text-decoration: none
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
    border-color: #0c0d0e
}

a.list-group-item.active,
a.list-group-item.active:hover,
a.list-group-item.active:focus {
    border-color: rgba(0, 0, 0, 0.6)
}

a.list-group-item-success.active {
    background-color: #62c462
}

a.list-group-item-success.active:hover,
a.list-group-item-success.active:focus {
    background-color: #4fbd4f
}

a.list-group-item-warning.active {
    background-color: #f89406
}

a.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus {
    background-color: #df8505
}

a.list-group-item-danger.active {
    background-color: #ee5f5b
}

a.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus {
    background-color: #ec4844
}

.jumbotron {
    border: 1px solid rgba(0, 0, 0, 0.6)
}

.panel-primary .panel-heading,
.panel-success .panel-heading,
.panel-danger .panel-heading,
.panel-warning .panel-heading,
.panel-info .panel-heading {
    border-color: #000
}
.clickable-tr{
  cursor: pointer;
}
pre.list {
        color : inherit;
        background-color : inherit;
        border : none;
/*	overflow-wrap: break-word; */
	word-break: keep-all;
	white-space: pre-line;
	white-space: -moz-pre-wrap;  
	white-space: -pre-wrap;      
 	white-space: -o-pre-wrap;    
 	word-wrap: break-word;       

}

/* ==========================================================================
   Source: root/css/bbs-horror.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* =========================================================
   VELENO NECRO-BBS RADICAL HORROR SKIN
   Synchronet Web/XJS presentation layer only.
   No server routing, forms, API calls or application logic changed.
   ========================================================= */

:root {
    --vh-black: #020203;
    --vh-void: #070006;
    --vh-crypt: #130008;
    --vh-panel: rgba(11, 0, 8, 0.92);
    --vh-panel2: rgba(28, 0, 13, 0.94);
    --vh-blood: #8b001f;
    --vh-blood2: #c8002f;
    --vh-hot: #ff174a;
    --vh-toxic: #65ff6e;
    --vh-toxic2: #16bd52;
    --vh-bone: #f1e4d0;
    --vh-dust: #aa8c8c;
    --vh-border: rgba(255, 23, 74, 0.55);
    --vh-glow: rgba(255, 23, 74, 0.42);
    --vh-font: "Spleen", "VT323", "Share Tech Mono", "Courier New", monospace;
}

@keyframes vh-flicker { 0%,100%{opacity:1} 8%{opacity:.84} 9%{opacity:1} 36%{opacity:.93} 37%{opacity:.7} 38%{opacity:1} 78%{opacity:.95} }
@keyframes vh-shift { 0%{background-position:0 0,0 0,0 0} 100%{background-position:0 3px,0 -180px,240px 0} }
@keyframes vh-pulse { 0%,100%{box-shadow:0 0 18px rgba(255,23,74,.28), inset 0 0 16px rgba(101,255,110,.05)} 50%{box-shadow:0 0 34px rgba(255,23,74,.58), inset 0 0 28px rgba(101,255,110,.10)} }
@keyframes vh-caret { 50%{border-color:transparent} }

html, body { min-height:100%; background:#020203 !important; }

body {
    color: var(--vh-bone) !important;
    font-family: var(--vh-font) !important;
    letter-spacing: .025em;
    text-shadow: 0 0 4px rgba(255,23,74,.22);
    background-image:
        linear-gradient(rgba(255,255,255,.025) 50%, rgba(0,0,0,.22) 50%),
        url('../horror-assets/static-noise.svg'),
        url('../horror-assets/crypt-bg.svg') !important;
    background-size: 100% 3px, 180px 180px, cover !important;
    background-attachment: fixed, fixed, fixed !important;
    animation: vh-shift 11s linear infinite;
    overflow-x: hidden;
}

body:before {
    content:"";
    position:fixed; inset:0; z-index:9998; pointer-events:none;
    background:
        radial-gradient(ellipse at center, transparent 42%, rgba(0,0,0,.72) 100%),
        repeating-linear-gradient(90deg, rgba(255,0,70,.035) 0 1px, transparent 1px 5px),
        linear-gradient(90deg, rgba(255,0,60,.05), rgba(0,255,90,.025), rgba(255,0,60,.05));
    mix-blend-mode: screen;
    animation: vh-flicker 5.5s infinite steps(1,end);
}
body:after {
    content:"NO CARRIER // NECRO NODE ACTIVE // 2400 BAUD FROM BELOW";
    position:fixed; right:12px; bottom:8px; z-index:9999; pointer-events:none;
    color:rgba(101,255,110,.34); font:11px/1 var(--vh-font); letter-spacing:.22em;
    text-shadow:0 0 10px rgba(101,255,110,.7);
}

* { scrollbar-color: var(--vh-blood2) var(--vh-black); }
::-webkit-scrollbar{width:13px;height:13px} ::-webkit-scrollbar-track{background:#030002} ::-webkit-scrollbar-thumb{background:linear-gradient(#ff174a,#560014);border:2px solid #030002}
::selection { color:#050006; background:var(--vh-toxic); text-shadow:none; }

.container, .container-fluid {
    position:relative;
    background: linear-gradient(180deg, rgba(3,0,4,.72), rgba(10,0,8,.92)) !important;
    border-left:1px solid rgba(255,23,74,.32);
    border-right:1px solid rgba(101,255,110,.18);
    box-shadow:0 0 60px rgba(0,0,0,.9), inset 0 0 44px rgba(139,0,31,.13);
}
.container:before, .container-fluid:before {
    content:""; display:block; height:42px; margin:0 -15px 18px;
    background:url('../horror-assets/blood-drip.svg') top center / 100% 90px repeat-x;
    opacity:.76; pointer-events:none;
}

.navbar, .navbar-default, .dark .navbar {
    min-height:64px;
    background:linear-gradient(180deg,#25000d,#070005 80%) !important;
    border:0 !important; border-bottom:2px solid var(--vh-hot) !important;
    box-shadow:0 0 28px rgba(255,23,74,.55), inset 0 -1px 0 rgba(101,255,110,.32);
}
.navbar:after{content:"";position:absolute;left:0;right:0;bottom:-22px;height:22px;background:url('../horror-assets/blood-drip.svg') top center/900px 90px repeat-x;opacity:.75;pointer-events:none}
.navbar-brand { color:#fff !important; min-height:64px; padding-left:62px !important; font-size:27px !important; letter-spacing:.16em; text-transform:uppercase; text-shadow:2px 0 var(--vh-hot), -2px 0 rgba(101,255,110,.45),0 0 18px var(--vh-hot); }
.navbar-brand:before { content:""; position:absolute; width:42px; height:42px; margin-left:-52px; margin-top:-10px; background:url('../horror-assets/veleno-sigil.svg') center/contain no-repeat; filter:drop-shadow(0 0 8px var(--vh-hot)); }
.navbar-nav>li>a { color:var(--vh-bone) !important; text-transform:uppercase; letter-spacing:.09em; min-height:64px; padding-top:22px !important; }
.navbar-nav>li>a:hover, .navbar-nav>.open>a, .navbar-nav>.active>a { color:#fff !important; background:linear-gradient(180deg,rgba(139,0,31,.7),rgba(255,23,74,.24)) !important; box-shadow:inset 0 -4px 0 var(--vh-toxic),0 0 18px rgba(255,23,74,.45); }
.navbar-toggle{border-color:var(--vh-hot)!important;background:#120007!important}.navbar-toggle .icon-bar{background:var(--vh-toxic)!important;box-shadow:0 0 6px var(--vh-toxic)}

.dropdown-menu, .dark .dropdown-menu { background:rgba(4,0,5,.98)!important; border:1px solid var(--vh-hot)!important; box-shadow:0 0 34px rgba(255,23,74,.55), inset 0 0 20px rgba(101,255,110,.06); }
.dropdown-menu:before{content:"ACCESSING HAUNTED DIRECTORY";display:block;color:rgba(101,255,110,.65);font-size:11px;letter-spacing:.14em;padding:8px 15px;border-bottom:1px dashed rgba(255,23,74,.45)}
.dropdown-menu>li>a, .dark .dropdown-menu li a { color:var(--vh-toxic)!important; text-transform:uppercase; }
.dropdown-menu>li>a:hover{color:#fff!important;background:rgba(139,0,31,.78)!important;}

h1,h2,h3,h4,h5,.panel-title,.page-header { color:#fff!important; font-family:var(--vh-font)!important; text-transform:uppercase; letter-spacing:.12em; text-shadow:2px 0 var(--vh-hot),-2px 0 rgba(101,255,110,.5),0 0 20px rgba(255,23,74,.85); animation:vh-flicker 7s infinite steps(1,end); }
h1:before,h2:before,h3:before,.panel-title:before{content:"† ";color:var(--vh-hot)}
h1:after,h2:after,h3:after,.panel-title:after{content:" _";border-right:2px solid var(--vh-toxic);animation:vh-caret .9s step-end infinite;color:var(--vh-toxic)}

.panel,.well,.jumbotron,.list-group-item,.modal-content,.breadcrumb,.table,pre.list,.alert,.thumbnail,fieldset {
    color:var(--vh-bone)!important; background:linear-gradient(180deg,var(--vh-panel),rgba(4,0,5,.96))!important;
    border:1px solid var(--vh-border)!important; border-radius:0!important;
    box-shadow:0 0 20px rgba(255,23,74,.25), inset 0 0 22px rgba(101,255,110,.045);
    animation:vh-pulse 8s infinite ease-in-out;
}
.panel-heading,.panel-primary>.panel-heading,.panel-info>.panel-heading,.panel-success>.panel-heading,.panel-warning>.panel-heading,.panel-danger>.panel-heading {
    color:#fff!important; background:linear-gradient(90deg,#6f001a,#1c000d 55%,#0b2b17)!important; border-color:var(--vh-hot)!important; border-radius:0!important; text-transform:uppercase; letter-spacing:.12em;
}
.panel-body { background-image:linear-gradient(90deg,rgba(255,23,74,.025) 1px,transparent 1px),linear-gradient(rgba(101,255,110,.018) 1px,transparent 1px); background-size:20px 20px; }
.panel-footer, footer, .dark footer { color:var(--vh-dust)!important; background:#050003!important; border-color:rgba(255,23,74,.35)!important; }

.btn,.btn-default,.btn-primary,.btn-success,.btn-info,.btn-warning,.btn-danger,input[type=submit],button {
    border-radius:0!important; border:1px solid var(--vh-hot)!important; color:#fff!important;
    background:linear-gradient(180deg,#8b001f,#25000d)!important; text-transform:uppercase; letter-spacing:.09em; text-shadow:0 0 7px #000; box-shadow:0 0 14px rgba(255,23,74,.38), inset 0 0 12px rgba(0,0,0,.45)!important;
}
.btn:hover,button:hover,input[type=submit]:hover{background:linear-gradient(180deg,#ff174a,#520014)!important;color:#fff!important;box-shadow:0 0 22px rgba(255,23,74,.8), inset 0 -2px 0 var(--vh-toxic)!important;}

input,textarea,select,.form-control {
    border-radius:0!important; background:#050006!important; color:var(--vh-toxic)!important; border:1px solid rgba(101,255,110,.45)!important; box-shadow:inset 0 0 12px rgba(101,255,110,.08),0 0 8px rgba(255,23,74,.18)!important; font-family:var(--vh-font)!important;
}
input:focus,textarea:focus,select:focus,.form-control:focus{border-color:var(--vh-hot)!important;box-shadow:0 0 20px rgba(255,23,74,.6), inset 0 0 18px rgba(101,255,110,.12)!important;}
label{color:var(--vh-dust)!important;text-transform:uppercase;letter-spacing:.08em}

.table>thead>tr>th,.table>tbody>tr>th { color:#fff!important; background:rgba(139,0,31,.55)!important; border-color:rgba(255,23,74,.45)!important; text-transform:uppercase; }
.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>thead>tr>td { border-color:rgba(255,23,74,.28)!important; }
.table-striped>tbody>tr:nth-child(odd)>td,.striped:nth-of-type(even){background:rgba(139,0,31,.18)!important}.table-hover>tbody>tr:hover>td{background:rgba(101,255,110,.09)!important;color:#fff!important}

.list-group-item:hover,a.list-group-item:hover,li.list-group-item.mail:hover{background:rgba(139,0,31,.68)!important;color:#fff!important;border-color:rgba(101,255,110,.65)!important;box-shadow:inset 5px 0 0 var(--vh-toxic),0 0 18px rgba(101,255,110,.2)}
a,.dark a{color:var(--vh-toxic)!important;text-shadow:0 0 7px rgba(101,255,110,.42)}a:hover,a:focus{color:#fff!important;text-decoration:none!important;text-shadow:0 0 12px var(--vh-toxic),0 0 22px var(--vh-hot)}

.badge,.label,span.badge.new,span.badge.scanned,span.badge.total{background:var(--vh-toxic)!important;color:#030003!important;border-radius:0!important;box-shadow:0 0 11px rgba(101,255,110,.75);text-shadow:none!important}.label-danger,.badge-danger{background:var(--vh-hot)!important;color:#fff!important}
.alert-danger{background:linear-gradient(90deg,#500014,#160006)!important}.alert-success{background:linear-gradient(90deg,#0b3617,#060006)!important}.alert-warning{background:linear-gradient(90deg,#4a2900,#080003)!important;color:#ffd27d!important}

pre,code,kbd,samp,.ansi,.terminal,.xterm,.ansi-viewer,canvas { background:#030003!important; color:var(--vh-toxic)!important; border-color:var(--vh-hot)!important; text-shadow:0 0 8px rgba(101,255,110,.45); }
img,canvas,video{filter:contrast(1.15) saturate(.75) brightness(.88)}
.thumbnail img,.avatar,img.avatar{border:1px solid var(--vh-hot)!important;box-shadow:0 0 18px rgba(255,23,74,.55)!important;filter:grayscale(.25) contrast(1.25) sepia(.18)}

.breadcrumb>li+li:before{content:"//"!important;color:var(--vh-hot)!important}.breadcrumb{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.modal-header,.modal-footer{border-color:rgba(255,23,74,.45)!important;background:rgba(24,0,12,.92)!important}.close{color:var(--vh-hot)!important;text-shadow:0 0 10px var(--vh-hot)!important;opacity:1!important}

.pagination>li>a,.pagination>li>span{background:#060006!important;color:var(--vh-toxic)!important;border-color:var(--vh-hot)!important}.pagination>.active>a,.pagination>li>a:hover{background:var(--vh-blood)!important;color:#fff!important}
.progress{background:#060006!important;border:1px solid var(--vh-hot);border-radius:0}.progress-bar{background:linear-gradient(90deg,var(--vh-blood),var(--vh-hot))!important;box-shadow:0 0 16px var(--vh-hot)}

/* Synchronet/FLWeb/common page affordances */
#login-form,#forgot-password-section,.forgot-pw-section{background:rgba(4,0,5,.98)!important}.page,.content,.main,.main-content,#content,#page-content{background:transparent!important}.sidebar,.offcanvas,.row-offcanvas,.sidebar-offcanvas{background:linear-gradient(180deg,rgba(18,0,9,.85),rgba(4,0,5,.94))!important;border-color:rgba(255,23,74,.35)!important}
.bin-icon,.glyphicon{color:var(--vh-hot)!important;text-shadow:0 0 10px var(--vh-hot)}

@media (max-width:767px){.navbar-brand{font-size:20px!important;padding-left:55px!important}.container:before,.container-fluid:before{height:25px}.navbar-nav>li>a{min-height:auto;padding-top:10px!important}.navbar:after{display:none}}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}body{background-position:0 0!important}}

/* =========================================================
   NECRO REALISM EXTREME PATCH
   More radical visual layer: real horror artwork, zombie rails,
   rusted metal UI, and non-fixed menu so content is never covered.
   Presentation only: no Synchronet logic changed.
   ========================================================= */

html, body { padding-top: 0 !important; }
body {
    background-color:#020202 !important;
    background-image:
        radial-gradient(ellipse at center, rgba(0,0,0,.16) 0%, rgba(0,0,0,.78) 72%, #000 100%),
        linear-gradient(rgba(255,255,255,.028) 50%, rgba(0,0,0,.28) 50%),
        url('../horror-assets/static-noise.svg'),
        url('../horror-assets/necro-bg.jpg') !important;
    background-size: cover, 100% 3px, 180px 180px, cover !important;
    background-position: center top, 0 0, 0 0, center top !important;
}
body.necro-loaded:before { opacity:.75; }

.navbar-fixed-top,
.navbar-fixed-bottom,
.navbar.navbar-fixed-top,
.navbar.navbar-fixed-bottom {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    z-index: 10 !important;
}
body > .container,
body > .container-fluid,
#content,
#page-content,
.main-content { margin-top: 0 !important; padding-top: 0 !important; }

.navbar, .navbar-default, .dark .navbar {
    position:relative !important;
    min-height:238px !important;
    padding-top:158px !important;
    margin-bottom:18px !important;
    background:
        linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.38) 54%, rgba(7,4,3,.96) 72%, #050403 100%),
        url('../horror-assets/necro-banner.jpg') center top / cover no-repeat !important;
    border-bottom:3px solid #3d0000 !important;
    box-shadow:0 0 45px rgba(0,0,0,.95), 0 18px 48px rgba(0,0,0,.85), inset 0 -42px 60px rgba(0,0,0,.9) !important;
    overflow:visible !important;
}
.navbar:before {
    content:"";
    position:absolute; inset:0; pointer-events:none; z-index:0;
    background:
      linear-gradient(90deg, rgba(0,0,0,.75), transparent 18%, transparent 82%, rgba(0,0,0,.78)),
      repeating-linear-gradient(90deg, rgba(255,0,0,.06) 0 1px, transparent 1px 6px),
      radial-gradient(circle at 50% 30%, rgba(160,0,0,.22), transparent 30%);
    mix-blend-mode:normal;
}
.navbar:after {
    bottom:-36px !important; height:52px !important;
    background:url('../horror-assets/blood-drip.svg') top center/850px 96px repeat-x !important;
    opacity:.95 !important; z-index:3;
}
.navbar .container,
.navbar .container-fluid { background:transparent !important; border:0 !important; box-shadow:none !important; z-index:2; }
.navbar .container:before,.navbar .container-fluid:before { display:none !important; }
.navbar-brand {
    position:absolute !important; z-index:4;
    top:20px !important; left:50% !important; transform:translateX(-50%) !important;
    height:auto !important; padding:0 0 0 0 !important; margin:0 !important;
    font-size:46px !important; line-height:1 !important;
    color:#ead8c8 !important;
    letter-spacing:.08em !important;
    font-weight:900 !important;
    font-family: Impact, Haettenschweiler, 'Arial Black', var(--vh-font) !important;
    -webkit-text-stroke:1px rgba(0,0,0,.95);
    text-shadow:0 3px 1px #000, 0 0 18px rgba(220,0,0,.95), 0 0 44px rgba(120,0,0,.9) !important;
}
.navbar-brand:before {
    width:66px !important; height:66px !important; margin-left:-82px !important; margin-top:-8px !important;
    background:url('../horror-assets/veleno-sigil.svg') center/contain no-repeat !important;
    filter:drop-shadow(0 0 13px #ff0000) drop-shadow(0 0 18px #000) !important;
}
.navbar-brand:after {
    content:"WELCOME TO HELL";
    display:block; font-family:var(--vh-font) !important; font-size:15px; letter-spacing:.25em;
    color:#b30000; -webkit-text-stroke:0; text-align:center; margin-top:8px;
    text-shadow:0 0 10px #ff0000,0 0 3px #000;
}
.navbar-collapse, .navbar-header { position:relative; z-index:4; }
.navbar-nav {
    background:linear-gradient(180deg, rgba(42,36,31,.98), rgba(8,8,8,.98)) !important;
    border:1px solid rgba(130,98,72,.45) !important;
    box-shadow:0 0 24px rgba(0,0,0,.95), inset 0 1px 0 rgba(255,255,255,.09), inset 0 -6px 22px rgba(0,0,0,.9) !important;
}
.navbar-nav>li>a {
    min-height:56px !important; padding-top:18px !important; padding-left:22px !important; padding-right:22px !important;
    color:#e9dfcf !important;
    background:linear-gradient(90deg, rgba(0,0,0,.25), rgba(80,66,52,.18), rgba(0,0,0,.25)) !important;
    border-left:1px solid rgba(255,255,255,.07) !important;
    border-right:1px solid rgba(0,0,0,.8) !important;
    text-shadow:0 2px 2px #000, 0 0 8px rgba(160,0,0,.55) !important;
}
.navbar-nav>li>a:before { content:"☠ "; color:#c7b299; opacity:.9; }
.navbar-nav>li>a:hover,
.navbar-nav>.open>a,
.navbar-nav>.active>a {
    background:linear-gradient(180deg, rgba(108,0,0,.95), rgba(18,8,6,.98)) !important;
    color:#fff !important; box-shadow:inset 0 -4px 0 #870000, 0 0 22px rgba(170,0,0,.75) !important;
}

.container, .container-fluid {
    max-width:1180px;
    background:
      linear-gradient(90deg, rgba(0,0,0,.9), rgba(20,16,13,.86), rgba(0,0,0,.9)),
      url('../horror-assets/static-noise.svg') !important;
    border:1px solid rgba(89,72,54,.55) !important;
    outline:1px solid rgba(85,0,0,.38);
    box-shadow:0 0 70px rgba(0,0,0,.98), inset 0 0 90px rgba(0,0,0,.88), inset 0 0 0 4px rgba(24,17,12,.88) !important;
}
body:has(.navbar) .container:before, body:has(.navbar) .container-fluid:before {
    height:0 !important; margin:0 !important; background:none !important;
}

.panel,.well,.jumbotron,.list-group-item,.modal-content,.breadcrumb,.table,pre.list,.alert,.thumbnail,fieldset {
    background:
      linear-gradient(180deg, rgba(24,22,18,.97), rgba(4,4,4,.98)) !important;
    border:1px solid rgba(110,82,55,.55) !important;
    box-shadow:0 0 28px rgba(0,0,0,.92), inset 0 0 40px rgba(0,0,0,.82), inset 0 0 0 2px rgba(60,38,24,.45) !important;
}
.panel-heading,.panel-primary>.panel-heading,.panel-info>.panel-heading,.panel-success>.panel-heading,.panel-warning>.panel-heading,.panel-danger>.panel-heading {
    background:linear-gradient(180deg, #190e0b, #050403) !important;
    border-bottom:1px solid rgba(135,0,0,.8) !important;
    color:#b80000 !important;
    font-family: Impact, Haettenschweiler, 'Arial Black', var(--vh-font) !important;
    font-size:20px; letter-spacing:.07em;
    text-shadow:0 0 9px rgba(255,0,0,.8), 0 2px 1px #000 !important;
}
.panel-body { background-image:linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px), url('../horror-assets/static-noise.svg') !important; background-size:100% 3px, 160px 160px !important; }

/* realistic horror cards added by the visual script */
.necro-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0 24px; }
.necro-tile { min-height:205px; position:relative; overflow:hidden; border:1px solid rgba(116,82,55,.65); box-shadow:0 0 22px rgba(0,0,0,.9), inset 0 0 32px #000; background:#030303 center/cover no-repeat; }
.necro-tile:before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 35%, rgba(0,0,0,.95)), radial-gradient(circle at center, transparent 20%, rgba(0,0,0,.5)); }
.necro-tile b { position:absolute; left:18px; bottom:18px; z-index:2; color:#a00000; font-family:Impact,Haettenschweiler,'Arial Black',var(--vh-font); font-size:34px; letter-spacing:.08em; text-shadow:0 0 10px #ff0000,0 3px 1px #000; transform:rotate(-3deg); }
.necro-tile small { position:absolute; right:12px; bottom:10px; z-index:2; color:#c9b8a2; text-shadow:0 2px 2px #000; }
.necro-tile.forum { background-image:url('../horror-assets/crypt-card.jpg'); }
.necro-tile.doors { background-image:url('../horror-assets/hallway-card.jpg'); }
.necro-tile.files { background-image:url('../horror-assets/zombie-card.jpg'); }

.necro-rail-left,.necro-rail-right { position:fixed; top:0; bottom:0; width:185px; z-index:1; pointer-events:none; opacity:.85; background-size:cover; background-position:center top; filter:contrast(1.1) brightness(.72) saturate(.85); }
.necro-rail-left { left:0; background-image:linear-gradient(90deg, rgba(0,0,0,.05), rgba(0,0,0,.65)), url('../horror-assets/necro-left.jpg'); }
.necro-rail-right { right:0; background-image:linear-gradient(270deg, rgba(0,0,0,.05), rgba(0,0,0,.65)), url('../horror-assets/necro-right.jpg'); }
.necro-jump { position:fixed; right:2vw; bottom:-8px; width:210px; height:420px; z-index:9997; pointer-events:none; opacity:0; background:url('../horror-assets/side-skull.jpg') center bottom/contain no-repeat; filter:drop-shadow(0 0 25px #000) contrast(1.15); transform:translateY(35px); transition:opacity .35s ease, transform .35s ease; }
.necro-jump.show { opacity:.86; transform:translateY(0); }

@media (max-width:1250px){ .necro-rail-left,.necro-rail-right{opacity:.35;width:90px}.container,.container-fluid{max-width:calc(100% - 30px)} }
@media (max-width:767px){
  .navbar,.navbar-default,.dark .navbar{min-height:176px!important;padding-top:118px!important;background-image:linear-gradient(180deg,rgba(0,0,0,.25),#050403 74%),url('../horror-assets/necro-banner-alt.jpg')!important}
  .navbar-brand{font-size:30px!important;top:20px!important;white-space:nowrap}.navbar-brand:before{width:42px!important;height:42px!important;margin-left:-52px!important}
  .navbar-nav{margin:0!important}.necro-tiles{grid-template-columns:1fr}.necro-rail-left,.necro-rail-right,.necro-jump{display:none!important}
}

/* =========================================================
   VELENO NECRO-BBS APOCALYPSE V4
   Goal: match the latest mockup as code, not as one flat image.
   Fixes: top menu stays in one row and never covers the VELENO BBS title.
   Scope: skin/programming only; Synchronet routes and logic untouched.
   ========================================================= */

:root {
  --vh-rust:#332018;
  --vh-rust2:#15100d;
  --vh-red:#a30000;
  --vh-red2:#ff1010;
  --vh-ash:#d8c9b4;
  --vh-mud:#080705;
}

/* Global scene: darker, wider, more like the generated horror dashboard */
html, body { padding-top:0 !important; }
body.necro-apocalypse {
  background-color:#010101 !important;
  background-image:
    radial-gradient(circle at 50% 130px, rgba(90,0,0,.23), transparent 34%),
    radial-gradient(circle at 15% 235px, rgba(180,0,0,.12), transparent 18%),
    radial-gradient(circle at 88% 255px, rgba(180,0,0,.10), transparent 18%),
    linear-gradient(90deg, rgba(0,0,0,.94), rgba(16,13,10,.78) 18%, rgba(7,5,4,.92) 50%, rgba(16,13,10,.78) 82%, rgba(0,0,0,.95)),
    url('../horror-assets/static-noise.svg'),
    url('../horror-assets/necro-bg.jpg') !important;
  background-position:center top, center top, center top, center top, 0 0, center top !important;
  background-size:cover, cover, cover, cover, 150px 150px, cover !important;
  background-attachment:fixed,fixed,fixed,fixed,fixed,fixed !important;
}

/* Top navigation: one single row above the hero/title */
body.necro-apocalypse .navbar,
body.necro-apocalypse .navbar-default,
body.necro-apocalypse .dark .navbar {
  min-height:332px !important;
  padding:0 !important;
  margin:0 0 28px 0 !important;
  border:0 !important;
  border-bottom:2px solid rgba(120,0,0,.9) !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,.08) 35%, rgba(0,0,0,.72) 74%, #020202 100%),
    radial-gradient(circle at 78% 75px, rgba(255,255,255,.13), transparent 8%),
    url('../horror-assets/necro-banner-alt.jpg') center top / cover no-repeat !important;
  box-shadow:0 24px 70px rgba(0,0,0,.92), inset 0 -80px 95px rgba(0,0,0,.94) !important;
}
body.necro-apocalypse .navbar:before {
  background:
    linear-gradient(90deg, #000 0%, transparent 12%, transparent 88%, #000 100%),
    repeating-linear-gradient(90deg, rgba(255,0,0,.06) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.75)) !important;
  z-index:0 !important;
}
body.necro-apocalypse .navbar:after {
  bottom:-40px !important;
  height:82px !important;
  background:url('../horror-assets/blood-drip.svg') top center/720px 110px repeat-x !important;
  opacity:.82 !important;
}
body.necro-apocalypse .navbar .container,
body.necro-apocalypse .navbar .container-fluid {
  width:100% !important;
  max-width:none !important;
  min-height:332px !important;
  padding:0 20px !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

/* The collapsed area is forced into one rusted metal strip */
body.necro-apocalypse .navbar-collapse {
  position:absolute !important;
  z-index:8 !important;
  top:16px !important;
  left:58px !important;
  right:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:auto !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
  border:1px solid rgba(91,57,36,.75) !important;
  background:linear-gradient(180deg, rgba(35,28,22,.96), rgba(8,7,6,.98)) !important;
  box-shadow:0 0 28px #000, inset 0 1px 0 rgba(255,255,255,.08), inset 0 -5px 20px rgba(0,0,0,.9) !important;
}
body.necro-apocalypse .navbar-nav {
  display:flex !important;
  float:none !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.necro-apocalypse .navbar-right { margin-left:auto !important; }
body.necro-apocalypse .navbar-nav>li { float:none !important; display:block !important; white-space:nowrap !important; }
body.necro-apocalypse .navbar-nav>li>a {
  height:54px !important;
  min-height:54px !important;
  padding:17px 21px 0 21px !important;
  font-size:15px !important;
  line-height:18px !important;
  letter-spacing:.12em !important;
  color:var(--vh-ash) !important;
  background:linear-gradient(180deg, rgba(46,36,28,.86), rgba(12,10,8,.97)) !important;
  border-left:1px solid rgba(255,255,255,.055) !important;
  border-right:1px solid rgba(0,0,0,.75) !important;
  text-transform:uppercase !important;
}
body.necro-apocalypse .navbar-nav>li>a:before {
  content:'☣' !important;
  display:inline-block;
  margin-right:8px;
  color:#b50000 !important;
  text-shadow:0 0 8px #ff0000, 0 1px 0 #000 !important;
}
body.necro-apocalypse .navbar-nav>li>a:hover,
body.necro-apocalypse .navbar-nav>.open>a,
body.necro-apocalypse .navbar-nav>.active>a {
  color:#fff !important;
  background:linear-gradient(180deg, rgba(110,0,0,.96), rgba(13,9,7,.99)) !important;
  box-shadow:inset 0 -4px 0 #8b0000, 0 0 24px rgba(200,0,0,.68) !important;
}

/* Brand/title sits in the hero center, below the menu. No overlap with FORUM. */
body.necro-apocalypse .navbar-header {
  position:absolute !important;
  z-index:5 !important;
  top:86px !important;
  left:0 !important;
  right:0 !important;
  height:172px !important;
  pointer-events:none !important;
}
body.necro-apocalypse .navbar-brand {
  pointer-events:auto !important;
  position:absolute !important;
  left:50% !important;
  top:0 !important;
  transform:translateX(-50%) !important;
  margin:0 !important;
  padding:16px 76px 0 122px !important;
  width:auto !important;
  max-width:calc(100vw - 220px) !important;
  height:auto !important;
  overflow:visible !important;
  white-space:nowrap !important;
  color:#e4d5c4 !important;
  font-family:Impact, Haettenschweiler, 'Arial Black', var(--vh-font) !important;
  font-size:82px !important;
  line-height:.9 !important;
  letter-spacing:.065em !important;
  -webkit-text-stroke:2px rgba(0,0,0,.96) !important;
  text-shadow:0 4px 0 #000, 0 0 18px #b00000, 0 0 55px rgba(255,0,0,.62) !important;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.58), transparent 68%) !important;
}
body.necro-apocalypse .navbar-brand:before {
  content:'' !important;
  position:absolute !important;
  left:18px !important;
  top:14px !important;
  width:92px !important;
  height:92px !important;
  margin:0 !important;
  background:url('../horror-assets/veleno-sigil.svg') center/contain no-repeat !important;
  filter:drop-shadow(0 0 18px #ff0000) drop-shadow(0 3px 8px #000) !important;
}
body.necro-apocalypse .navbar-brand:after {
  content:'WELCOME TO HELL' !important;
  display:block !important;
  color:#b60000 !important;
  font-family:var(--vh-font) !important;
  font-size:21px !important;
  line-height:1.25 !important;
  letter-spacing:.18em !important;
  text-align:center !important;
  margin:16px 0 0 0 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 0 9px #ff0000, 0 2px 1px #000 !important;
}

/* Hero props made with code/DOM layers, not a single screenshot */
.necro-hero-prop { position:absolute; z-index:3; pointer-events:none; opacity:.88; filter:contrast(1.18) saturate(.78) brightness(.72) drop-shadow(0 0 22px #000); }
.necro-hero-prop.zombie-left { left:0; top:54px; width:315px; height:270px; background:url('../horror-assets/necro-left.jpg') left top/cover no-repeat; mask-image:linear-gradient(90deg,#000 0%,#000 60%,transparent 100%); -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 60%,transparent 100%); }
.necro-hero-prop.zombie-right { right:0; top:58px; width:315px; height:270px; background:url('../horror-assets/necro-right.jpg') right top/cover no-repeat; mask-image:linear-gradient(270deg,#000 0%,#000 60%,transparent 100%); -webkit-mask-image:linear-gradient(270deg,#000 0%,#000 60%,transparent 100%); }
.necro-hero-prop.moon { right:270px; top:72px; width:108px; height:108px; border-radius:50%; background:radial-gradient(circle at 35% 30%,#f1eadc,#8e887e 38%,#2b2927 70%,transparent 72%); opacity:.48; box-shadow:0 0 42px rgba(230,220,200,.22); }
.necro-hero-prop.chain-top { left:0; right:0; top:0; height:24px; background:repeating-linear-gradient(90deg, #111 0 10px, #3b2b20 10px 18px, #070707 18px 29px); opacity:.55; }

/* Content width and dashboard composition */
body.necro-apocalypse > .container,
body.necro-apocalypse > .container-fluid {
  width:calc(100% - 122px) !important;
  max-width:1560px !important;
  margin:0 auto 32px auto !important;
  padding:18px 26px 32px 26px !important;
  background:linear-gradient(90deg, rgba(3,3,3,.96), rgba(22,18,14,.86), rgba(3,3,3,.96)), url('../horror-assets/static-noise.svg') !important;
  border:1px solid rgba(87,58,39,.72) !important;
  outline:1px solid rgba(120,0,0,.48) !important;
  box-shadow:0 0 80px rgba(0,0,0,.98), inset 0 0 85px rgba(0,0,0,.82) !important;
}
body.necro-apocalypse .row-offcanvas {
  display:flex;
  gap:22px;
  align-items:flex-start;
}
body.necro-apocalypse .row-offcanvas > .col-xs-12 { flex:1 1 auto; }
body.necro-apocalypse .sidebar-offcanvas {
  flex:0 0 315px;
  max-width:315px;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Panels like the last generated layout */
body.necro-apocalypse .panel,
body.necro-apocalypse .well,
body.necro-apocalypse .jumbotron,
body.necro-apocalypse .list-group-item,
body.necro-apocalypse .breadcrumb,
body.necro-apocalypse .modal-content,
body.necro-apocalypse fieldset,
body.necro-apocalypse pre.list,
body.necro-apocalypse .table,
body.necro-apocalypse .thumbnail {
  background:linear-gradient(180deg, rgba(18,16,13,.98), rgba(4,4,4,.985)) !important;
  border:1px solid rgba(95,64,42,.72) !important;
  outline:1px solid rgba(75,0,0,.35) !important;
  box-shadow:0 0 30px #000, inset 0 0 46px rgba(0,0,0,.88), inset 0 0 0 3px rgba(38,25,18,.62) !important;
}
body.necro-apocalypse .panel-heading,
body.necro-apocalypse .panel-title,
body.necro-apocalypse legend,
body.necro-apocalypse h1,
body.necro-apocalypse h2,
body.necro-apocalypse h3 {
  color:#b60000 !important;
  font-family:Impact, Haettenschweiler, 'Arial Black', var(--vh-font) !important;
  letter-spacing:.08em !important;
  text-shadow:0 0 10px rgba(255,0,0,.75), 0 2px 1px #000 !important;
  text-transform:uppercase !important;
}
body.necro-apocalypse .panel-heading:before,
body.necro-apocalypse .panel-title:before,
body.necro-apocalypse legend:before { content:'☠ '; color:#806b58; text-shadow:0 0 10px #000; }

/* Code-built homepage tiles like the mockup bottom row */
body.necro-apocalypse .necro-tiles {
  grid-template-columns:repeat(3,minmax(220px,1fr)) !important;
  gap:22px !important;
  margin:26px 0 26px !important;
}
body.necro-apocalypse .necro-tile {
  min-height:235px !important;
  border:1px solid rgba(91,57,36,.85) !important;
  outline:1px solid rgba(140,0,0,.38);
  box-shadow:0 0 34px #000, inset 0 0 45px #000 !important;
}
body.necro-apocalypse .necro-tile b {
  color:#b70000 !important;
  font-size:42px !important;
  bottom:auto !important;
  top:18px !important;
  transform:rotate(-1.8deg) !important;
}
body.necro-apocalypse .necro-tile small {
  left:18px !important;
  right:auto !important;
  bottom:18px !important;
  color:#c7b9a4 !important;
  text-transform:uppercase;
  letter-spacing:.08em;
}
body.necro-apocalypse .necro-tile small:before { content:'☠ '; color:#806b58; }

/* Mobile: keep usability, stack menu instead of overlap */
@media (max-width:1180px) {
  body.necro-apocalypse .navbar-collapse { left:12px !important; right:12px !important; overflow-x:auto !important; }
  body.necro-apocalypse .navbar-nav>li>a { padding-left:14px !important; padding-right:14px !important; font-size:13px !important; }
  body.necro-apocalypse .navbar-brand { font-size:60px !important; max-width:calc(100vw - 80px) !important; padding-left:100px !important; }
  body.necro-apocalypse .navbar-brand:before { width:74px !important; height:74px !important; }
}
@media (max-width:767px) {
  body.necro-apocalypse .navbar { min-height:auto !important; padding-top:0 !important; }
  body.necro-apocalypse .navbar .container,
  body.necro-apocalypse .navbar .container-fluid { min-height:0 !important; padding:0 10px !important; }
  body.necro-apocalypse .navbar-header { position:relative !important; top:auto !important; height:142px !important; padding-top:62px !important; }
  body.necro-apocalypse .navbar-brand { font-size:38px !important; padding-left:70px !important; max-width:100% !important; }
  body.necro-apocalypse .navbar-brand:before { width:52px !important; height:52px !important; left:8px !important; }
  body.necro-apocalypse .navbar-brand:after { font-size:13px !important; }
  body.necro-apocalypse .navbar-collapse { position:relative !important; top:auto !important; left:auto !important; right:auto !important; display:block !important; overflow-x:visible !important; }
  body.necro-apocalypse .navbar-nav { display:block !important; }
  body.necro-apocalypse .navbar-nav>li>a { height:auto !important; min-height:42px !important; padding:12px 14px !important; }
  body.necro-apocalypse > .container,
  body.necro-apocalypse > .container-fluid { width:calc(100% - 14px) !important; padding:12px !important; }
  body.necro-apocalypse .row-offcanvas { display:block; }
  body.necro-apocalypse .sidebar-offcanvas { max-width:none; }
}

/* ==========================================================================
   Source: root/css/necro-apocalypse-global.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* VELENO NECRO APOCALYPSE GLOBAL SKIN
   Skin-only layer for Synchronet/XJS: no server logic changed. */
:root{
  --necro-black:#030202; --necro-void:#090605; --necro-rust:#24120e; --necro-blood:#a30012; --necro-blood2:#5a0008;
  --necro-red:#ff1a22; --necro-ember:#d88a35; --necro-bone:#e8dfc8; --necro-dim:#9a8b77; --necro-green:#39b66a;
  --necro-border:rgba(195,31,23,.62); --necro-glass:rgba(9,6,5,.88);
}
html{background:#000!important; min-height:100%;}
body{
  background:
    linear-gradient(90deg,rgba(0,0,0,.98) 0,rgba(0,0,0,.3) 14%,rgba(0,0,0,.10) 50%,rgba(0,0,0,.3) 86%,rgba(0,0,0,.98) 100%),
    radial-gradient(circle at 52% 10%,rgba(150,0,20,.24),transparent 42%),
    url('../images/necro-apocalypse/apoc-bg.jpg') center top/cover fixed no-repeat!important;
  color:var(--necro-bone)!important; font-family:"Courier New",monospace!important; letter-spacing:.03em; padding-top:0!important;
  text-shadow:0 0 3px #000,0 0 8px rgba(180,0,0,.22);
}
body:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:url('../horror-assets/static-noise.svg') repeat;opacity:.16;mix-blend-mode:screen;animation:necroNoise .9s steps(2) infinite;}
body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 38%,rgba(0,0,0,.72) 82%,#000 100%),linear-gradient(rgba(255,0,0,.025) 50%,rgba(0,0,0,.06) 50%);background-size:auto,100% 4px;}
@keyframes necroNoise{0%,100%{transform:translate(0,0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(1px,1px)}}
/* Header/nav: one row at top, never covering logo/content */
.navbar.navbar-default,.navbar-fixed-top{position:relative!important;top:auto!important;left:auto!important;right:auto!important;margin:0!important;border:0!important;border-radius:0!important;min-height:72px!important;background:linear-gradient(180deg,rgba(10,4,3,.97),rgba(0,0,0,.93)),url('../images/necro-apocalypse/chains-top.jpg') center/cover no-repeat!important;box-shadow:0 0 0 1px rgba(120,0,0,.45),0 8px 24px #000,0 0 36px rgba(200,0,0,.32)!important;z-index:50!important;}
.navbar .container,.navbar .container-fluid{width:100%!important;max-width:none!important;display:flex!important;align-items:stretch!important;gap:0!important;padding:0 20px!important;}
.navbar-header{float:none!important;display:flex!important;align-items:center!important;flex:0 0 auto!important;min-width:235px!important;max-width:260px!important;height:72px!important;background:linear-gradient(90deg,rgba(90,0,8,.18),transparent)!important;}
.navbar-brand{height:72px!important;line-height:1!important;padding:10px 22px 8px 74px!important;position:relative!important;font-family:Impact,"Courier New",monospace!important;font-size:28px!important;letter-spacing:.11em!important;color:#f4ead4!important;text-shadow:3px 3px 0 #250000,0 0 14px #f00,0 0 2px #fff!important;white-space:normal!important;text-transform:uppercase!important;}
.navbar-brand:before{content:"";position:absolute;left:14px;top:11px;width:48px;height:48px;background:url('../horror-assets/veleno-sigil.svg') center/contain no-repeat,radial-gradient(circle,#1b0506,#000);border:1px solid #b30017;box-shadow:0 0 20px #f00;border-radius:2px;}
.navbar-brand:after{content:"WELCOME TO HELL";display:block;margin-top:2px;font-size:11px;letter-spacing:.22em;color:#db000e;text-shadow:0 0 10px #f00;font-family:"Courier New",monospace;}
#navbar.navbar-collapse{display:flex!important;align-items:stretch!important;justify-content:space-between!important;flex:1 1 auto!important;min-width:0!important;max-height:none!important;padding:0!important;border:0!important;overflow:visible!important;}
.navbar-nav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;margin:0!important;float:none!important;white-space:nowrap!important;}
.navbar-right{margin-left:auto!important;}
.navbar-nav>li{float:none!important;display:block!important;}
.navbar-nav>li>a,.navbar .dropdown>a{height:72px!important;display:flex!important;align-items:center!important;padding:0 18px!important;color:var(--necro-bone)!important;background:linear-gradient(180deg,rgba(38,30,23,.92),rgba(5,3,2,.96))!important;border-left:1px solid rgba(176,32,22,.32)!important;border-right:1px solid rgba(0,0,0,.75)!important;font-weight:800!important;font-size:15px!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-shadow:0 0 8px #000,0 0 8px rgba(220,0,0,.45)!important;}
.navbar-nav>li>a:before{content:"☣";color:#b30013;margin-right:9px;text-shadow:0 0 9px #f00;}
.navbar-nav>li>a:hover,.navbar-nav>.open>a{background:linear-gradient(180deg,#641010,#130202)!important;color:#fff6df!important;box-shadow:inset 0 -3px 0 #d00014,0 0 22px rgba(255,0,0,.35)!important;}
.dropdown-menu{background:linear-gradient(180deg,rgba(18,10,8,.98),rgba(0,0,0,.98)),url('../images/necro-apocalypse/panel-grunge.jpg') center/cover!important;border:1px solid var(--necro-border)!important;box-shadow:0 14px 24px #000,0 0 20px rgba(120,0,0,.45)!important;padding:8px!important;}
.dropdown-menu>li>a,.dropdown-menu a{color:var(--necro-bone)!important;padding:10px 16px!important;text-transform:uppercase;}
.dropdown-menu>li>a:hover,.dropdown-menu a:hover{background:rgba(130,0,12,.62)!important;color:#fff!important;}
.navbar-toggle{margin-top:17px!important;border-color:#86000b!important;background:#120202!important;}
.navbar-toggle .icon-bar{background-color:#e3d6bd!important;}
@media(max-width:1180px){.navbar .container,.navbar .container-fluid{display:block!important;padding:0!important}.navbar-header{max-width:none!important;width:100%!important}.navbar-collapse{display:block!important}.navbar-nav{flex-wrap:wrap!important}.navbar-nav>li>a{height:54px!important;padding:0 13px!important;font-size:13px!important}.navbar-brand{height:72px!important}}
/* Apocalypse banner below menu */
body.necro-ready .necro-apocalypse-hero{position:relative;min-height:245px;margin:0 0 24px 0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62)),url('../images/necro-apocalypse/apoc-header.jpg') center top/cover no-repeat;border-bottom:2px solid #65000a;box-shadow:inset 0 -70px 70px #000,0 0 30px #000;overflow:hidden;}
body.necro-ready .necro-apocalypse-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:360px;background:url('../images/necro-apocalypse/zombie-left.jpg') left bottom/contain no-repeat;filter:drop-shadow(0 0 22px #000);}
body.necro-ready .necro-apocalypse-hero:after{content:"";position:absolute;right:0;top:0;bottom:0;width:330px;background:url('../images/necro-apocalypse/zombie-right.jpg') right bottom/contain no-repeat;filter:drop-shadow(0 0 22px #000);}
.necro-hero-title{position:absolute;left:50%;top:52px;transform:translateX(-50%);font-family:Impact,"Courier New",monospace;font-size:clamp(48px,8vw,112px);letter-spacing:.08em;color:#eee2c9;text-transform:uppercase;text-shadow:5px 5px 0 #230000,0 0 8px #fff,0 0 22px #a0000c;white-space:nowrap;}
.necro-hero-title:before{content:"☣";color:#a00012;margin-right:24px;text-shadow:0 0 22px #f00;}
.necro-hero-title:after{content:"WELCOME TO HELL";position:absolute;left:50%;top:100%;transform:translateX(-50%);font-family:"Courier New",monospace;font-size:18px;color:#e00012;letter-spacing:.18em;text-shadow:0 0 15px #f00;}
/* Main page content: every XJS output receives the same skin */
.container,.container-fluid{position:relative;}
.main,.page-content,#content,.content,.jumbotron,.well,.panel,.card,.list-group,.modal-content,fieldset,form:not(#form-login){background:linear-gradient(180deg,rgba(15,10,8,.90),rgba(0,0,0,.93)),url('../images/necro-apocalypse/panel-grunge.jpg') center/cover!important;border:1px solid rgba(155,20,14,.52)!important;box-shadow:inset 0 0 0 1px rgba(255,230,180,.06),0 0 0 1px #000,0 12px 28px rgba(0,0,0,.82),0 0 25px rgba(120,0,0,.20)!important;color:var(--necro-bone)!important;border-radius:2px!important;}
.panel-heading,.card-header,.modal-header,legend,h1,h2,h3,h4,.table>thead>tr>th{font-family:Impact,"Courier New",monospace!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#e00012!important;background:linear-gradient(90deg,rgba(60,0,6,.72),rgba(0,0,0,.55))!important;border-color:rgba(140,0,0,.48)!important;text-shadow:0 0 8px #f00,2px 2px 0 #000!important;}
h1:before,h2:before,h3:before,.panel-heading:before,.card-header:before{content:"☠ ";color:#b59268;text-shadow:0 0 10px #000;}
a{color:#ffcc8a!important;text-shadow:0 0 8px rgba(200,0,0,.45);}a:hover{color:#fff!important;text-decoration:none!important;text-shadow:0 0 14px #f00;}
.btn,.button,input[type=submit],button:not(.navbar-toggle){background:linear-gradient(180deg,#67000b,#160202)!important;border:1px solid #b00014!important;color:#fff1d2!important;text-transform:uppercase!important;font-weight:800!important;letter-spacing:.08em!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 15px rgba(255,0,0,.24)!important;border-radius:2px!important;}
.btn:hover,button:hover,input[type=submit]:hover{background:linear-gradient(180deg,#a00012,#220204)!important;color:#fff!important;}
input,textarea,select,.form-control{background:#050303!important;color:#eadfc9!important;border:1px solid rgba(160,0,20,.62)!important;box-shadow:inset 0 0 18px #000,0 0 8px rgba(160,0,20,.14)!important;border-radius:2px!important;}
.table{color:var(--necro-bone)!important;background:rgba(0,0,0,.28)!important}.table>tbody>tr>td,.table>tbody>tr>th,.table>thead>tr>th{border-color:rgba(130,21,18,.45)!important}.table-striped>tbody>tr:nth-of-type(odd){background:rgba(90,0,12,.18)!important}.table-hover>tbody>tr:hover{background:rgba(140,0,14,.28)!important}
pre,code,.ansi,.ansi-viewer,canvas{background:#010101!important;border:1px solid rgba(160,0,20,.45)!important;box-shadow:0 0 22px #000,inset 0 0 35px rgba(0,0,0,.85)!important;color:#dcd3bd!important;}
/* Universal XJS cardification */
.necro-xjs-skin{position:relative;}.necro-xjs-skin:before{content:"";position:fixed;left:0;bottom:0;width:155px;height:360px;z-index:0;pointer-events:none;background:url('../images/necro-apocalypse/blood-bag.jpg') left bottom/contain no-repeat;opacity:.82;filter:drop-shadow(0 0 18px #000)}.necro-xjs-skin:after{content:"";position:fixed;right:0;bottom:0;width:210px;height:280px;z-index:0;pointer-events:none;background:url('../images/necro-apocalypse/skull-corner.jpg') right bottom/contain no-repeat;opacity:.86;filter:drop-shadow(0 0 18px #000)}
.necro-page-badge{position:absolute;right:22px;top:10px;color:#a99372;font-size:11px;text-transform:uppercase;letter-spacing:.2em;opacity:.65;z-index:3}.necro-page-badge:before{content:"☠ FILE: ";color:#b00012;}
/* Sidebar widgets */
#sidebar .card,#sidebar .panel,.necro-widget{position:relative!important;overflow:hidden!important;margin-bottom:17px!important;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.90)),url('../images/necro-apocalypse/panel-grunge.jpg') center/cover!important;border:1px solid rgba(150,22,18,.68)!important;box-shadow:inset 0 0 28px #000,0 0 0 1px #000,0 0 24px rgba(150,0,0,.25)!important;padding:0!important;}
#sidebar .card:before,.necro-widget:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.03),transparent 18%,transparent 82%,rgba(255,255,255,.025)),radial-gradient(circle at 100% 0,rgba(170,0,15,.26),transparent 36%);}
#sidebar .card-header,.necro-widget .card-header{padding:12px 16px 10px!important;font-size:20px!important;border-bottom:1px solid rgba(140,0,14,.55)!important;background:linear-gradient(90deg,rgba(40,0,4,.9),rgba(0,0,0,.68)),url('../horror-assets/blood-drip.svg') right top/130px auto no-repeat!important;}
.necro-widget .card-body{padding:13px!important;position:relative;z-index:2}.necro-widget table{margin:0!important}.necro-empty{padding:16px;background:rgba(100,0,10,.28);color:#d20012;text-transform:uppercase}.necro-prop{position:absolute;pointer-events:none;z-index:1;opacity:.62}.necro-prop.zombie-left{left:-18px;bottom:-10px;width:105px;height:170px;background:url('../images/necro-apocalypse/zombie-left.jpg') left bottom/cover no-repeat}.necro-prop.zombie-right{right:-8px;bottom:-6px;width:110px;height:170px;background:url('../images/necro-apocalypse/zombie-right.jpg') right bottom/cover no-repeat}.necro-prop.skull{right:8px;bottom:3px;width:74px;height:74px;background:url('../images/necro-apocalypse/skull-corner.jpg') center/cover no-repeat}.necro-prop.bloodbag{right:8px;top:44px;width:68px;height:130px;background:url('../images/necro-apocalypse/blood-bag.jpg') center/contain no-repeat}.necro-prop.moon{right:8px;top:42px;width:110px;height:88px;background:url('../images/necro-apocalypse/moon-crow.jpg') center/cover no-repeat;opacity:.54}
.rv-row{display:flex;gap:11px;align-items:center;padding:10px;border-bottom:1px solid rgba(130,0,12,.35);background:rgba(0,0,0,.38)}.rv-alias{color:#e00012;font-weight:800}.rv-when,.rv-loc,.rv-conn{color:#9e907a;font-size:12px}.necro-avatar,.avatar-inline{width:48px!important;height:48px!important;background:url('../images/necro-apocalypse/skull-corner.jpg') center/cover no-repeat!important;border:1px solid rgba(160,0,20,.55);box-shadow:0 0 13px #000;}
/* Homepage-ish blocks */
.necro-apocalypse-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.necro-apocalypse-tiles .tile{min-height:190px;border:1px solid rgba(150,0,12,.65);box-shadow:inset 0 0 40px #000,0 12px 24px #000;background-size:cover;background-position:center;position:relative;overflow:hidden}.necro-apocalypse-tiles .tile:nth-child(1){background-image:linear-gradient(180deg,transparent,#000),url('../images/necro-apocalypse/grave-card.jpg')}.necro-apocalypse-tiles .tile:nth-child(2){background-image:linear-gradient(180deg,transparent,#000),url('../images/necro-apocalypse/zombie-left.jpg')}.necro-apocalypse-tiles .tile:nth-child(3){background-image:linear-gradient(180deg,transparent,#000),url('../images/necro-apocalypse/terminal-frame.jpg')}.necro-apocalypse-tiles .tile span{position:absolute;left:18px;bottom:14px;font-family:Impact,"Courier New";font-size:28px;color:#d00012;text-shadow:0 0 12px #f00,2px 2px 0 #000;text-transform:uppercase;}
@media(max-width:900px){body.necro-ready .necro-apocalypse-hero{min-height:190px}.necro-hero-title{font-size:42px;top:54px}.necro-hero-title:after{font-size:12px}.necro-apocalypse-tiles{grid-template-columns:1fr}.necro-xjs-skin:before,.necro-xjs-skin:after{display:none}}

/* === NECRO SPECTRAL UPGRADE v2: menu fix + heavier haunting === */
html,body{overflow-x:hidden!important;}
/* Top menu: true single row, no cropped text */
.navbar.navbar-default,.navbar-fixed-top{
  min-height:62px!important;height:auto!important;overflow:visible!important;
  background:linear-gradient(180deg,rgba(5,3,3,.98),rgba(0,0,0,.96)),url('../images/necro-apocalypse/chains-top.jpg') center/cover no-repeat!important;
}
.navbar .container,.navbar .container-fluid{
  min-height:62px!important;height:auto!important;align-items:center!important;overflow:visible!important;padding:0 12px!important;
}
.navbar-header{height:62px!important;min-width:148px!important;max-width:168px!important;overflow:visible!important;}
.navbar-brand{
  height:62px!important;min-height:62px!important;line-height:1.05!important;padding:8px 10px 6px 54px!important;
  font-size:20px!important;letter-spacing:.09em!important;white-space:normal!important;overflow:visible!important;display:flex!important;flex-direction:column!important;justify-content:center!important;
}
.navbar-brand:before{left:8px!important;top:9px!important;width:42px!important;height:42px!important;}
.navbar-brand:after{font-size:9px!important;letter-spacing:.12em!important;line-height:1.1!important;margin-top:2px!important;}
#navbar.navbar-collapse{height:auto!important;min-height:62px!important;overflow:visible!important;display:flex!important;flex-wrap:nowrap!important;}
.navbar-nav{height:auto!important;min-height:62px!important;display:flex!important;flex-wrap:nowrap!important;overflow:visible!important;}
.navbar-nav>li{height:62px!important;min-height:62px!important;display:flex!important;align-items:stretch!important;overflow:visible!important;}
.navbar-nav>li>a,.navbar .dropdown>a{
  height:62px!important;min-height:62px!important;line-height:1.2!important;display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0 12px!important;font-size:13px!important;letter-spacing:.065em!important;overflow:visible!important;white-space:nowrap!important;
}
.navbar-nav>li>a:before{margin-right:6px!important;font-size:12px!important;line-height:1!important;}
.navbar-right>li>a{padding-left:13px!important;padding-right:13px!important;}
.dropdown-menu{top:100%!important;z-index:9999!important;}
@media(min-width:1200px){.navbar-nav>li>a,.navbar .dropdown>a{font-size:14px!important;padding:0 15px!important}.navbar-header{min-width:172px!important;max-width:190px!important}.navbar-brand{font-size:22px!important}}
@media(max-width:1180px){
  .navbar .container,.navbar .container-fluid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:thin;}
  .navbar-header{flex:0 0 155px!important;width:155px!important;max-width:155px!important;}
  #navbar.navbar-collapse{display:flex!important;flex:1 0 auto!important;width:auto!important;overflow:visible!important;}
  .navbar-nav{flex-wrap:nowrap!important;display:flex!important;}
  .navbar-nav>li>a{height:62px!important;font-size:12px!important;padding:0 10px!important;}
}
/* Hero pushed safely below the menu and made more cinematic */
body.necro-ready .necro-apocalypse-hero{margin-top:0!important;min-height:300px!important;background-position:center top!important;}
body.necro-ready .necro-apocalypse-hero:before{width:430px!important;opacity:.96!important;animation:necroReach 7s ease-in-out infinite;}
body.necro-ready .necro-apocalypse-hero:after{width:390px!important;opacity:.92!important;animation:necroSway 8s ease-in-out infinite;}
@keyframes necroReach{0%,100%{transform:translateX(0) scale(1)}50%{transform:translateX(10px) scale(1.025)}}
@keyframes necroSway{0%,100%{transform:translateX(0)}50%{transform:translateX(-8px)}}
.necro-hero-title{top:66px!important;color:#f4ead6!important;filter:drop-shadow(0 0 4px #fff) drop-shadow(0 0 18px #b00010);}
.necro-hero-title:after{top:92%!important;color:#ff151c!important;}
/* More spectral atmosphere */
.necro-fog,.necro-fog-2,.necro-bats,.necro-blood-rain{position:fixed;inset:0;pointer-events:none;z-index:4;}
.necro-fog{background:radial-gradient(ellipse at 20% 72%,rgba(210,220,210,.09),transparent 34%),radial-gradient(ellipse at 75% 78%,rgba(180,190,190,.075),transparent 36%);filter:blur(12px);opacity:.75;animation:necroFogMove 18s linear infinite;}
.necro-fog-2{background:radial-gradient(ellipse at 50% 20%,rgba(120,0,10,.12),transparent 48%),radial-gradient(ellipse at 85% 40%,rgba(220,220,210,.055),transparent 32%);filter:blur(18px);opacity:.65;animation:necroFogMove2 26s linear infinite;}
@keyframes necroFogMove{0%{transform:translateX(-4%)}50%{transform:translateX(5%)}100%{transform:translateX(-4%)}}
@keyframes necroFogMove2{0%{transform:translateY(2%)}50%{transform:translateY(-3%)}100%{transform:translateY(2%)}}
.necro-bats{z-index:6;background-image:radial-gradient(circle at 12% 16%,rgba(0,0,0,.75) 0 2px,transparent 3px),radial-gradient(circle at 18% 19%,rgba(0,0,0,.65) 0 1px,transparent 3px),radial-gradient(circle at 72% 13%,rgba(0,0,0,.7) 0 2px,transparent 3px);opacity:.65;animation:necroBats 16s linear infinite;}
@keyframes necroBats{0%{transform:translateX(-10%) translateY(0)}50%{transform:translateX(6%) translateY(-2%)}100%{transform:translateX(18%) translateY(1%)}}
.necro-blood-rain{z-index:5;background:linear-gradient(180deg,rgba(155,0,10,.0),rgba(155,0,10,.35) 16%,rgba(155,0,10,0) 22%) 10% -160px/2px 180px repeat-y,linear-gradient(180deg,rgba(155,0,10,.0),rgba(155,0,10,.25) 25%,rgba(155,0,10,0) 34%) 72% -90px/3px 220px repeat-y;opacity:.36;animation:necroRain 5.5s linear infinite;}
@keyframes necroRain{to{background-position:10% 120px,72% 220px}}
/* Spookier panels with realistic props */
.panel,.card,.well,.list-group,.modal-content,.necro-widget{backdrop-filter:blur(1.5px) saturate(.75)!important;}
.panel:after,.card:after,.well:after,.necro-widget:after{content:"";position:absolute;right:-1px;top:-1px;width:92px;height:92px;pointer-events:none;background:url('../horror-assets/blood-drip.svg') right top/contain no-repeat;opacity:.58;}
.panel,.card,.well,.necro-widget{position:relative!important;}
#sidebar .panel,#sidebar .card,.necro-widget{min-height:120px!important;}
#sidebar .panel:nth-of-type(odd):before,#sidebar .card:nth-of-type(odd):before{content:"";position:absolute;right:6px;bottom:4px;width:84px;height:96px;background:url('../images/necro-apocalypse/skull-corner.jpg') center/cover no-repeat;opacity:.35;filter:contrast(1.2) brightness(.75);}
#sidebar .panel:nth-of-type(even):before,#sidebar .card:nth-of-type(even):before{content:"";position:absolute;right:-8px;bottom:-10px;width:96px;height:118px;background:url('../images/necro-apocalypse/zombie-right.jpg') right bottom/cover no-repeat;opacity:.28;filter:contrast(1.15) brightness(.65);}
/* Better readability over the stronger horror */
.panel-body,.card-body,.well,.table,td,th,p,li{font-size:14px!important;line-height:1.55!important;}
.navbar-nav .caret{margin-left:6px!important;border-top-color:#e8dfc8!important;}

/* === NECRO MOBILE REPAIR v3: hamburger drawer + visible menus on phones === */
@media (max-width: 767px){
  html,body{width:100%!important;overflow-x:hidden!important;}
  .navbar.navbar-default,.navbar-fixed-top,.navbar-necro-apocalypse{
    position:relative!important;min-height:66px!important;height:auto!important;z-index:9999!important;
    background:linear-gradient(180deg,rgba(8,0,0,.98),rgba(0,0,0,.96)),url('../images/necro-apocalypse/chains-top.jpg') center/cover no-repeat!important;
  }
  .navbar .container,.navbar .container-fluid{
    display:block!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;overflow:visible!important;
  }
  .navbar-header{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    width:100%!important;max-width:none!important;min-width:0!important;height:66px!important;min-height:66px!important;
    padding:0 8px!important;border-bottom:1px solid rgba(180,0,18,.65)!important;
    box-shadow:0 0 20px rgba(255,0,0,.22)!important;
  }
  .navbar-brand{
    flex:1 1 auto!important;min-width:0!important;height:66px!important;max-height:66px!important;
    padding:9px 4px 6px 58px!important;font-size:20px!important;line-height:.92!important;letter-spacing:.08em!important;
    overflow:visible!important;white-space:normal!important;text-overflow:clip!important;
  }
  .navbar-brand:before{left:8px!important;top:10px!important;width:44px!important;height:44px!important;}
  .navbar-brand:after{font-size:8px!important;letter-spacing:.10em!important;margin-top:4px!important;}
  .navbar-toggle{
    display:block!important;position:relative!important;float:none!important;flex:0 0 54px!important;width:54px!important;height:48px!important;
    margin:0!important;padding:11px 10px!important;border:1px solid #b00014!important;border-radius:2px!important;
    background:linear-gradient(180deg,#3a0006,#050000)!important;box-shadow:0 0 18px rgba(255,0,0,.42),inset 0 0 14px #000!important;
  }
  .navbar-toggle:before{content:"☠";position:absolute;left:5px;top:-15px;color:#dd0015;text-shadow:0 0 11px #f00;font-size:15px;}
  .navbar-toggle .icon-bar{display:block!important;width:28px!important;height:3px!important;margin:4px auto!important;background:#eadfc9!important;box-shadow:0 0 8px #f00!important;}

  /* Bootstrap normally hides .collapse on mobile: restore that behavior after the desktop horror flex overrides. */
  #navbar.navbar-collapse,
  #navbar.navbar-collapse.collapse{
    display:none!important;position:absolute!important;left:0!important;right:0!important;top:66px!important;width:100%!important;
    height:auto!important;max-height:calc(100vh - 66px)!important;overflow-y:auto!important;overflow-x:hidden!important;
    padding:8px!important;margin:0!important;border:0!important;
    background:linear-gradient(180deg,rgba(10,3,3,.985),rgba(0,0,0,.985)),url('../images/necro-apocalypse/panel-grunge.jpg') center/cover no-repeat!important;
    box-shadow:0 16px 40px #000, inset 0 0 0 1px rgba(170,0,16,.65), inset 0 0 35px rgba(90,0,10,.32)!important;
  }
  #navbar.navbar-collapse.in,
  #navbar.navbar-collapse.collapse.in,
  #navbar.navbar-collapse.show{
    display:block!important;
  }
  #navbar:before{content:"☣ MENU DELLA CRIPTA ☣";display:block;padding:10px 12px 12px;margin:0 0 7px;color:#e00014;font-family:Impact,'Courier New',monospace;font-size:20px;letter-spacing:.08em;text-align:center;text-shadow:0 0 14px #f00;border-bottom:1px solid rgba(180,0,18,.45);}
  .navbar-nav,.navbar-right{
    display:block!important;float:none!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;white-space:normal!important;overflow:visible!important;
  }
  .navbar-nav>li{
    display:block!important;float:none!important;width:100%!important;height:auto!important;min-height:0!important;margin:0 0 6px!important;overflow:visible!important;
  }
  .navbar-nav>li>a,.navbar .dropdown>a{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;height:auto!important;min-height:50px!important;
    padding:13px 14px!important;font-size:15px!important;line-height:1.2!important;letter-spacing:.09em!important;white-space:normal!important;
    background:linear-gradient(90deg,rgba(82,0,9,.92),rgba(9,4,3,.95) 42%,rgba(0,0,0,.98))!important;
    border:1px solid rgba(170,0,18,.55)!important;box-shadow:inset 0 0 18px rgba(0,0,0,.82),0 0 12px rgba(160,0,18,.18)!important;
  }
  .navbar-nav>li>a:before{font-size:15px!important;margin-right:10px!important;}
  .navbar-nav .caret{margin-left:auto!important;}
  .dropdown-menu,#login-form.dropdown-menu{
    position:static!important;float:none!important;width:100%!important;min-width:0!important;margin:5px 0 0!important;padding:8px!important;
    border:1px solid rgba(120,0,12,.58)!important;background:rgba(0,0,0,.86)!important;box-shadow:inset 0 0 24px #000!important;
  }
  .dropdown-menu>li>a,.dropdown-menu a{display:block!important;padding:11px 13px!important;font-size:14px!important;white-space:normal!important;}
  .open>.dropdown-menu{display:block!important;}
  #login-form input,#login-form .btn{width:100%!important;margin-bottom:8px!important;}

  body.necro-ready .necro-apocalypse-hero{min-height:170px!important;margin:0 0 12px!important;background-position:center top!important;}
  body.necro-ready .necro-apocalypse-hero:before{width:145px!important;opacity:.62!important;background-position:left bottom!important;}
  body.necro-ready .necro-apocalypse-hero:after{width:130px!important;opacity:.55!important;background-position:right bottom!important;}
  .necro-hero-title{top:44px!important;font-size:clamp(30px,12vw,52px)!important;letter-spacing:.04em!important;text-align:center!important;max-width:96vw!important;white-space:nowrap!important;}
  .necro-hero-title:before{margin-right:8px!important;}
  .necro-hero-title:after{font-size:10px!important;letter-spacing:.12em!important;white-space:nowrap!important;}

  .container,.container-fluid{width:100%!important;max-width:100%!important;padding-left:10px!important;padding-right:10px!important;}
  .row{margin-left:-5px!important;margin-right:-5px!important;}
  [class*='col-']{padding-left:5px!important;padding-right:5px!important;}
  .panel,.card,.well,.necro-widget{margin-bottom:12px!important;}
  .table-responsive{border-color:rgba(170,0,16,.48)!important;}
}

@media (min-width:768px) and (max-width:1180px){
  .navbar .container,.navbar .container-fluid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:visible!important;padding:0 6px!important;}
  .navbar-header{flex:0 0 160px!important;width:160px!important;min-width:160px!important;max-width:160px!important;}
  #navbar.navbar-collapse{display:flex!important;flex:1 0 auto!important;overflow:visible!important;}
  .navbar-nav{display:flex!important;flex-wrap:nowrap!important;}
  .navbar-nav>li>a{font-size:12px!important;padding:0 10px!important;min-width:max-content!important;}
}

/* === NECRO DUPLICATE TEXT CLEANUP v1 ===
   Rimuove testi/menu duplicati sovrapposti: il banner resta grafico,
   la navigazione reale resta una sola. */
body.necro-ready .necro-apocalypse-hero{
  background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.62)),url('../images/necro-apocalypse/apoc-header-clean.jpg') center top/cover no-repeat!important;
}
.necro-hero-title,
.necro-hero-title:before,
.necro-hero-title:after{
  display:none!important;
  content:none!important;
}
.necro-apocalypse-tiles .tile span{
  display:none!important;
}
.necro-page-badge{
  display:none!important;
}
/* Il brand reale in alto diventa solo sigillo: evita il secondo VELENO BBS sul banner. */
@media (min-width:768px){
  .navbar-header{min-width:78px!important;max-width:88px!important;width:82px!important;flex:0 0 82px!important;}
  .navbar-brand{font-size:0!important;letter-spacing:0!important;width:82px!important;min-width:82px!important;padding:0!important;color:transparent!important;text-shadow:none!important;overflow:hidden!important;}
  .navbar-brand:before{left:16px!important;top:12px!important;width:48px!important;height:48px!important;}
  .navbar-brand:after{display:none!important;content:none!important;}
  .navbar-nav>li>a:before{margin-right:8px!important;}
}
@media (max-width:767px){
  .navbar-brand{font-size:0!important;color:transparent!important;text-shadow:none!important;padding-left:58px!important;}
  .navbar-brand:after{display:none!important;content:none!important;}
}

/* Veleno audit cleanup: keep top menu in one row on desktop while preserving dropdowns */
@media (min-width: 992px){
  .navbar-nav{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;white-space:nowrap!important;}
  .navbar-nav>li,.navbar-nav .nav-item{float:none!important;display:flex!important;white-space:nowrap!important;}
  .navbar-nav>li>a,.navbar-nav .nav-link{white-space:nowrap!important;padding-left:13px!important;padding-right:13px!important;}
}
@media (max-width: 991.98px){
  .navbar-nav{white-space:normal!important;}
}

/* ==========================================================================
   Source: root/css/veleno-premium-horror-v7.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ============================================================
   VELENO BBS - HORROR PREMIUM REFINEMENT V7
   Rifinitura globale: sidebar, menu, tabelle, hover, scrollbar.
   Nessuna logica WebV4 modificata.
   ============================================================ */

:root{
  --veleno-blood:#c60016;
  --veleno-blood-hot:#ff102a;
  --veleno-deep:#030000;
  --veleno-panel:#100806;
  --veleno-rust:#5b1b13;
  --veleno-bone:#eadfc7;
  --veleno-green:#20d060;
}

/* atmosfera globale senza usare immagini come sfondo principale */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    radial-gradient(circle at 12% 10%, rgba(190,0,20,.20), transparent 18%),
    radial-gradient(circle at 88% 8%, rgba(255,0,25,.16), transparent 22%),
    linear-gradient(90deg, rgba(0,0,0,.75), transparent 18%, transparent 82%, rgba(0,0,0,.78)),
    repeating-linear-gradient(0deg, rgba(255,0,0,.035) 0 1px, transparent 1px 4px);
  mix-blend-mode:screen;
  opacity:.55;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.018) 0 1px, transparent 1px 3px),
    radial-gradient(circle at center, transparent 44%, rgba(0,0,0,.62) 100%);
  opacity:.7;
}

/* contenuto sempre sopra agli overlay */
.navbar, .container, .container-fluid, footer { position:relative; z-index:5; }

/* menu superiore: una riga desktop, stile metallo/sangue */
.navbar-necro-apocalypse,
.navbar-default{
  border:1px solid rgba(255,35,35,.42)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.05),
    inset 0 -18px 38px rgba(0,0,0,.72),
    0 0 24px rgba(160,0,0,.52),
    0 8px 28px rgba(0,0,0,.82)!important;
  background:
    linear-gradient(180deg, rgba(40,20,14,.96), rgba(8,5,4,.98) 52%, rgba(0,0,0,.98))!important;
}
@media (min-width:768px){
  .navbar-necro-apocalypse .navbar-nav{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    white-space:nowrap!important;
    width:100%;
  }
  .navbar-necro-apocalypse .navbar-nav>li{
    flex:0 0 auto!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li>a{
    padding-left:13px!important;
    padding-right:13px!important;
    font-size:16px!important;
    letter-spacing:.03em!important;
  }
}
.navbar-necro-apocalypse .navbar-nav>li>a,
.navbar-default .navbar-nav>li>a{
  color:var(--veleno-bone)!important;
  text-transform:uppercase;
  text-shadow:0 0 6px #000, 0 0 10px rgba(255,0,0,.45);
  border-left:1px solid rgba(255,255,255,.06);
  border-right:1px solid rgba(0,0,0,.8);
  background:
    linear-gradient(90deg, rgba(255,255,255,.04), transparent 25%, rgba(255,0,0,.08) 50%, transparent 75%, rgba(255,255,255,.03));
}
.navbar-necro-apocalypse .navbar-nav>li>a:hover,
.navbar-necro-apocalypse .navbar-nav>.open>a{
  color:#fff!important;
  background:
    radial-gradient(circle at 50% 100%, rgba(255,0,0,.42), transparent 48%),
    linear-gradient(180deg, rgba(95,0,0,.95), rgba(16,0,0,.98))!important;
  box-shadow:inset 0 -3px 0 var(--veleno-blood-hot), 0 0 18px rgba(255,0,0,.55);
}
.dropdown-menu{
  background:linear-gradient(180deg,#160805,#050000)!important;
  border:1px solid rgba(255,40,40,.45)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.88), 0 0 24px rgba(155,0,0,.55)!important;
}
.dropdown-menu>li>a, .dropdown-item{
  color:var(--veleno-bone)!important;
  text-shadow:0 0 4px #000;
}
.dropdown-menu>li>a:hover, .dropdown-item:hover{
  background:linear-gradient(90deg,rgba(170,0,0,.85),rgba(40,0,0,.9))!important;
  color:#fff!important;
}

/* pannelli premium, applicato anche ai moduli non-sidebar */
.card, .panel, .well, .necro-widget{
  background:
    linear-gradient(180deg, rgba(23,12,9,.96), rgba(5,3,2,.98)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 7px)!important;
  border:1px solid rgba(255,40,40,.35)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    inset 0 0 34px rgba(0,0,0,.88),
    0 0 22px rgba(145,0,0,.38),
    0 8px 22px rgba(0,0,0,.72)!important;
  position:relative;
  overflow:hidden;
}
.card::before, .panel::before, .well::before, .necro-widget::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 0%, rgba(255,0,0,.16), transparent 20%),
    linear-gradient(120deg, transparent 0 46%, rgba(255,255,255,.055) 47%, transparent 49% 100%);
  opacity:.72;
}
.card::after, .panel::after, .well::after, .necro-widget::after{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:11px;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 12px 0, rgba(255,0,0,.8), transparent 62%),
    linear-gradient(180deg, rgba(130,0,0,.85), transparent);
  filter:drop-shadow(0 0 6px rgba(255,0,0,.5));
  opacity:.75;
}

/* titoli box */
.card-header, .panel-heading, .necro-widget .card-header{
  color:#ff1b2f!important;
  font-family:"Creepster","Courier New",monospace!important;
  text-transform:uppercase;
  letter-spacing:.075em!important;
  text-align:center;
  text-shadow:
    0 0 4px #000,
    0 0 9px rgba(255,0,0,.85),
    0 0 18px rgba(255,0,0,.45)!important;
  background:
    linear-gradient(90deg, transparent, rgba(90,0,0,.75) 16%, rgba(10,0,0,.96) 50%, rgba(90,0,0,.75) 84%, transparent)!important;
  border-bottom:1px solid rgba(255,35,35,.35)!important;
  animation:velenoTitlePulse 3.8s ease-in-out infinite;
}
@keyframes velenoTitlePulse{
  0%,100%{filter:brightness(.92)}
  50%{filter:brightness(1.32)}
}

/* sidebar: allineamento solido e niente residui strani */
#sidebar .necro-widget{
  margin-bottom:16px!important;
  border-radius:0!important;
}
#sidebar .card-body,
#sidebar .panel-body{
  position:relative;
  z-index:2;
}
#sidebar table{
  width:100%!important;
  max-width:100%!important;
  table-layout:auto!important;
}
#sidebar th{
  color:#f3e8d1!important;
  white-space:nowrap!important;
  text-shadow:0 0 5px #000;
}
#sidebar td{
  color:#fff2d8!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
.system-stats-003{
  padding:10px!important;
}
.system-stats-003 .ss003-info-frame{
  margin:0 auto!important;
  width:100%!important;
  max-width:100%!important;
  transform:none!important;
  left:auto!important;
  right:auto!important;
}
.system-stats-003 .card-header::before,
.system-stats-003 .card-header::after,
.system-stats-003 .ss003-info-frame::before,
.system-stats-003 .ss003-info-frame::after{
  display:none!important;
  content:none!important;
}

/* tabelle forum/files: leggibili e coerenti */
.table, table{
  background:rgba(0,0,0,.28)!important;
}
.table>tbody>tr>td,
.table>tbody>tr>th,
.table>thead>tr>th{
  border-color:rgba(255,55,55,.22)!important;
}
.table>tbody>tr:hover{
  background:rgba(145,0,0,.25)!important;
}

/* link e bottoni */
a{
  color:#ff5a5a;
  text-shadow:0 0 5px rgba(255,0,0,.25);
}
a:hover{
  color:#fff;
  text-shadow:0 0 10px rgba(255,0,0,.85);
}
.btn, button, input[type=submit]{
  background:linear-gradient(180deg,#2a0b07,#070000)!important;
  border:1px solid rgba(255,50,50,.42)!important;
  color:var(--veleno-bone)!important;
  text-transform:uppercase;
  box-shadow:inset 0 0 12px rgba(255,0,0,.14), 0 0 12px rgba(0,0,0,.7)!important;
}
.btn:hover, button:hover, input[type=submit]:hover{
  background:linear-gradient(180deg,#790000,#130000)!important;
  box-shadow:0 0 18px rgba(255,0,0,.52)!important;
}

/* scrollbar horror */
*{
  scrollbar-width:thin;
  scrollbar-color:#8f0012 #090000;
}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#070000}
::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#450000,#c00017,#330000);
  border:1px solid #1b0000;
}
::-webkit-scrollbar-thumb:hover{background:#ff102a}

/* mobile: sidebar sotto e leggibile */
@media (max-width:767px){
  body::before, body::after{opacity:.38}
  .navbar-necro-apocalypse .navbar-nav>li>a{
    font-size:15px!important;
    padding:11px 14px!important;
  }
  #sidebar{
    margin-top:18px;
  }
  .card, .panel, .well, .necro-widget{
    overflow:visible;
  }
}

/* micro-effetto graffi; solo CSS, leggero */
.veleno-blood-flicker{
  animation:velenoFlicker 5.5s infinite step-end;
}
@keyframes velenoFlicker{
  0%,93%,100%{opacity:1}
  94%{opacity:.78}
  95%{opacity:1}
  97%{opacity:.86}
}

/* ==========================================================================
   Source: root/css/veleno-extreme-inciso-v8.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ============================================================
   VELENO BBS - EXTREME HORROR INCISO V8
   Modifica incisiva: elementi visuali nei singoli XJS + CSS forte.
   Logica WebV4 invariata.
   ============================================================ */

:root{
  --vx-red:#ff001f;
  --vx-red-dark:#650006;
  --vx-red-deep:#210000;
  --vx-black:#020000;
  --vx-panel:#100604;
  --vx-bone:#f5e6c6;
  --vx-ash:#8d7d6d;
  --vx-toxic:#32ff6b;
}

/* sfondo atmosferico composito, non usa l'immagine di esempio */
html.veleno-v8-extreme body{
  background-color:#020000!important;
  color:var(--vx-bone)!important;
  font-family:"Courier New",monospace;
}
html.veleno-v8-extreme body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    url("../images/necro-apocalypse/chains-top.jpg") repeat-x top center,
    radial-gradient(circle at 50% -10%, rgba(255,0,31,.28), transparent 22%),
    radial-gradient(circle at 8% 18%, rgba(160,0,0,.22), transparent 18%),
    radial-gradient(circle at 92% 16%, rgba(160,0,0,.18), transparent 20%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, rgba(0,0,0,.2), rgba(0,0,0,.84));
  opacity:.9;
}
html.veleno-v8-extreme body:after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.96), transparent 14%, transparent 86%, rgba(0,0,0,.96)),
    repeating-linear-gradient(0deg, rgba(255,0,0,.035) 0 1px, transparent 1px 5px),
    radial-gradient(circle at center, transparent 36%, rgba(0,0,0,.70) 100%);
  mix-blend-mode:multiply;
}

/* tutto sopra l'atmosfera */
html.veleno-v8-extreme .navbar,
html.veleno-v8-extreme .container,
html.veleno-v8-extreme .container-fluid,
html.veleno-v8-extreme footer{
  position:relative;
  z-index:5;
}

/* camera centrale */
.veleno-main-chamber{
  position:relative;
  padding:18px 18px 22px!important;
  background:
    linear-gradient(180deg, rgba(13,4,2,.78), rgba(0,0,0,.64)),
    url("../images/necro-apocalypse/panel-grunge.jpg") center/cover;
  border:2px solid rgba(255,0,31,.55);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.05),
    inset 0 0 65px rgba(0,0,0,.96),
    0 0 34px rgba(255,0,31,.34),
    0 14px 40px rgba(0,0,0,.92);
  overflow:visible;
}
.veleno-main-chamber:before,
.veleno-main-chamber:after{
  content:"";
  position:absolute;
  width:88px;
  height:88px;
  pointer-events:none;
  background:url("../images/necro-apocalypse/skull-corner.jpg") center/contain no-repeat;
  opacity:.85;
  filter:drop-shadow(0 0 12px rgba(255,0,31,.55));
}
.veleno-main-chamber:before{left:-18px;top:-18px}
.veleno-main-chamber:after{right:-18px;bottom:-18px;transform:rotate(180deg)}

/* sigillo pagina inserito nei file XJS */
.veleno-page-seal{
  position:relative;
  margin:0 0 18px;
  padding:14px 22px 13px;
  text-align:center;
  border:1px solid rgba(255,0,31,.72);
  background:
    linear-gradient(90deg, transparent, rgba(60,0,0,.8) 12%, rgba(0,0,0,.95) 50%, rgba(60,0,0,.8) 88%, transparent),
    repeating-linear-gradient(135deg, rgba(255,255,255,.04) 0 1px, transparent 1px 8px);
  box-shadow:
    inset 0 0 28px rgba(255,0,31,.18),
    0 0 25px rgba(255,0,31,.32);
  color:#fff;
  font-family:"Creepster","Courier New",monospace;
  font-size:28px;
  line-height:1;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-shadow:0 0 4px #000, 0 0 12px var(--vx-red), 0 0 26px rgba(255,0,31,.72);
}
.veleno-page-seal:before,
.veleno-page-seal:after{
  content:"";
  position:absolute;
  top:50%;
  width:64px;
  height:34px;
  transform:translateY(-50%);
  background:url("../images/necro-ui/skull_corner.jpg") center/contain no-repeat;
  opacity:.88;
}
.veleno-page-seal:before{left:14px}
.veleno-page-seal:after{right:14px;transform:translateY(-50%) rotate(180deg)}
.veleno-page-seal span:before{content:"☠ "; color:var(--vx-red);}
.veleno-page-seal span:after{content:" ☠"; color:var(--vx-red);}

/* menu: più aggressivo e leggibile su una riga */
.navbar-necro-apocalypse{
  min-height:64px!important;
  margin-top:12px!important;
  margin-bottom:26px!important;
  border:2px solid rgba(255,0,31,.78)!important;
  background:
    url("../images/necro-ui/chains_top.jpg") repeat-x top center,
    linear-gradient(180deg,#3a0805 0%,#100000 46%,#000 100%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.08),
    inset 0 -28px 52px rgba(0,0,0,.92),
    0 0 0 3px rgba(0,0,0,.88),
    0 0 36px rgba(255,0,31,.55)!important;
}
.navbar-necro-apocalypse:before{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-14px;height:18px;
  background:linear-gradient(180deg, rgba(255,0,31,.85), transparent);
  clip-path:polygon(0 0, 4% 0, 5% 100%, 7% 0, 12% 0, 13% 80%, 15% 0, 100% 0, 100% 30%, 0 30%);
  opacity:.78;
}
.navbar-necro-apocalypse .navbar-brand{
  color:#fff!important;
  font-family:"Creepster","Courier New",monospace!important;
  font-size:31px!important;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-shadow:0 0 7px #000,0 0 16px var(--vx-red),0 0 28px var(--vx-red)!important;
  padding-top:16px!important;
}
.veleno-brand-sigil{
  display:inline-block;
  margin-right:8px;
  color:var(--vx-red);
  filter:drop-shadow(0 0 9px var(--vx-red));
  animation:vxSpinGlitch 6s infinite steps(1);
}
@keyframes vxSpinGlitch{0%,91%,100%{transform:none}92%{transform:skewX(-8deg)}94%{transform:skewX(6deg)}}

@media (min-width:768px){
  .navbar-necro-apocalypse .navbar-nav{
    display:flex!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li>a{
    padding:21px 9px 18px!important;
    font-size:14px!important;
    max-width:135px;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}
@media (min-width:1200px){
  .navbar-necro-apocalypse .navbar-nav>li>a{
    padding-left:13px!important;
    padding-right:13px!important;
    font-size:15px!important;
    max-width:170px;
  }
}
.navbar-necro-apocalypse .navbar-nav>li>a{
  position:relative;
  color:#f8e4c0!important;
  text-transform:uppercase;
  text-shadow:0 0 4px #000,0 0 8px rgba(255,0,31,.62)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(75,0,0,.20),rgba(0,0,0,.28))!important;
  border-left:1px solid rgba(255,0,31,.20);
  border-right:1px solid rgba(0,0,0,.85);
}
.navbar-necro-apocalypse .navbar-nav>li>a:before{
  content:"";
  position:absolute;
  left:11px;right:11px;bottom:7px;height:2px;
  background:linear-gradient(90deg,transparent,var(--vx-red),transparent);
  opacity:.25;
}
.navbar-necro-apocalypse .navbar-nav>li>a:hover:before,
.navbar-necro-apocalypse .navbar-nav>.open>a:before{opacity:1;height:4px}
.navbar-necro-apocalypse .navbar-nav>li>a:hover,
.navbar-necro-apocalypse .navbar-nav>.open>a{
  background:
    radial-gradient(circle at center bottom, rgba(255,0,31,.60), transparent 52%),
    linear-gradient(180deg,#8e000b,#190000 68%,#000)!important;
  color:#fff!important;
  transform:translateY(-1px);
}
.dropdown-menu{
  padding:7px!important;
  background:
    linear-gradient(180deg,rgba(44,5,3,.98),rgba(0,0,0,.98)),
    url("../images/necro-ui/panel_texture.jpg") center/cover!important;
  border:2px solid rgba(255,0,31,.62)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.95),0 0 30px rgba(255,0,31,.42)!important;
}
.dropdown-menu>li>a,.dropdown-item{
  margin:2px 0;
  border-left:3px solid rgba(255,0,31,.34);
  background:rgba(0,0,0,.32)!important;
}
.dropdown-menu>li>a:hover,.dropdown-item:hover{
  border-left-color:#fff;
  background:linear-gradient(90deg,#9b0011,#180000)!important;
}

/* box/pannelli estremi */
.card,.panel,.well,.necro-widget,.veleno-sidebar-module{
  border:2px solid rgba(255,0,31,.60)!important;
  background:
    linear-gradient(180deg, rgba(31,8,5,.96), rgba(0,0,0,.96)),
    url("../images/necro-ui/panel_texture.jpg") center/cover!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.055),
    inset 0 0 45px rgba(0,0,0,.98),
    0 0 0 3px rgba(0,0,0,.72),
    0 0 30px rgba(255,0,31,.32),
    0 18px 34px rgba(0,0,0,.80)!important;
  border-radius:0!important;
}
.card:before,.panel:before,.well:before,.necro-widget:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  z-index:0;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,0,31,.22), transparent 20%),
    radial-gradient(circle at 100% 18%, rgba(255,0,31,.14), transparent 18%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 10px)!important;
}
.card:after,.panel:after,.well:after,.necro-widget:after{
  content:""!important;
  position:absolute!important;
  left:0;right:0;top:0;height:24px!important;
  pointer-events:none!important;
  z-index:1;
  background:
    linear-gradient(180deg, rgba(255,0,31,.88), rgba(120,0,0,.5) 36%, transparent),
    radial-gradient(ellipse at 20px 0, rgba(255,0,31,1), transparent 72%)!important;
  clip-path:polygon(0 0,100% 0,100% 42%,94% 42%,93% 100%,91% 42%,80% 42%,79% 88%,77% 42%,61% 42%,60% 75%,58% 42%,42% 42%,41% 100%,39% 42%,22% 42%,21% 82%,19% 42%,0 42%)!important;
}
.card > *, .panel > *, .well > *, .necro-widget > *{position:relative;z-index:2}

.card-header,.panel-heading,.necro-widget .card-header{
  min-height:42px;
  padding:12px 10px 8px!important;
  color:#fff!important;
  font-family:"Creepster","Courier New",monospace!important;
  font-size:24px!important;
  text-transform:uppercase;
  letter-spacing:.11em!important;
  text-align:center!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.0),rgba(100,0,0,.88),rgba(0,0,0,.96),rgba(100,0,0,.88),rgba(0,0,0,.0))!important;
  text-shadow:
    2px 2px 0 #000,
    0 0 8px var(--vx-red),
    0 0 22px rgba(255,0,31,.86)!important;
  border-bottom:1px solid rgba(255,0,31,.50)!important;
}
.card-header:before,.panel-heading:before{
  content:"☠";
  margin-right:9px;
  color:var(--vx-red);
}
.card-header:after,.panel-heading:after{
  content:"☠";
  margin-left:9px;
  color:var(--vx-red);
}

/* sidebar ancora più caratterizzata */
#sidebar{
  position:relative;
}
#sidebar:before{
  content:"";
  display:block;
  height:54px;
  margin:0 0 12px;
  background:
    url("../images/necro-sidebar/grave-moon.jpg") center/cover,
    linear-gradient(180deg,#350000,#000);
  border:2px solid rgba(255,0,31,.58);
  box-shadow:inset 0 0 35px #000,0 0 24px rgba(255,0,31,.32);
}
#sidebar:after{
  content:"";
  display:block;
  height:62px;
  margin:12px 0 0;
  background:url("../images/necro-sidebar/skull-bottom.jpg") center/contain no-repeat;
  opacity:.82;
  filter:drop-shadow(0 0 15px rgba(255,0,31,.42));
}
.veleno-sidebar-module{
  margin-bottom:19px!important;
}
.veleno-sidebar-module .card-body,
.veleno-sidebar-module .panel-body{
  padding:10px!important;
}
.veleno-sidebar-module table{
  margin:0!important;
  color:var(--vx-bone)!important;
}
.veleno-sidebar-module th{
  color:#fff!important;
  text-shadow:0 0 8px #000,0 0 10px rgba(255,0,31,.45);
  border-right:1px solid rgba(255,0,31,.28);
  width:42%;
}
.veleno-sidebar-module td{
  color:#ffe7c0!important;
}
.system-stats-003 .card-header:before,
.system-stats-003 .card-header:after,
.system-stats-003 .ss003-info-frame:before,
.system-stats-003 .ss003-info-frame:after{
  display:none!important;
  content:none!important;
}
.system-stats-003 .card-header{
  font-size:24px!important;
}

/* moduli webmonitor */
.components-webmonitor-panel,
.veleno-webmonitor-panel{
  border-image:none!important;
}

/* tabelle forum/files/elenchi molto più leggibili */
.table, table{
  background:rgba(0,0,0,.52)!important;
  color:var(--vx-bone)!important;
}
.table thead th,
table thead th{
  background:linear-gradient(180deg,#530006,#080000)!important;
  color:#fff!important;
  text-transform:uppercase;
  border-color:rgba(255,0,31,.55)!important;
  text-shadow:0 0 9px var(--vx-red);
}
.table tbody tr,
table tbody tr{
  transition:background .18s ease, box-shadow .18s ease, transform .18s ease;
}
.table tbody tr:nth-child(even),
table tbody tr:nth-child(even){
  background:rgba(255,0,31,.035)!important;
}
.table tbody tr:hover,
table tbody tr:hover{
  background:linear-gradient(90deg,rgba(142,0,12,.36),rgba(0,0,0,.40))!important;
  box-shadow:inset 4px 0 0 var(--vx-red),0 0 18px rgba(255,0,31,.22);
}
.table>tbody>tr>td,.table>tbody>tr>th,.table>thead>tr>th,
table td, table th{
  border-color:rgba(255,0,31,.24)!important;
}

/* input, form, editor */
input,select,textarea,.form-control{
  background:#060000!important;
  color:#ffe8c6!important;
  border:1px solid rgba(255,0,31,.48)!important;
  box-shadow:inset 0 0 13px rgba(255,0,31,.13),0 0 10px rgba(0,0,0,.62)!important;
}
input:focus,select:focus,textarea:focus,.form-control:focus{
  border-color:#ff3246!important;
  box-shadow:inset 0 0 15px rgba(255,0,31,.24),0 0 16px rgba(255,0,31,.45)!important;
}

/* bottoni: stile lama arrugginita */
.btn,button,input[type=submit],input[type=button]{
  position:relative;
  border-radius:0!important;
  background:
    linear-gradient(135deg, transparent 0 8px, rgba(140,0,10,.96) 8px 40%, #120000 40% 100%)!important;
  border:1px solid rgba(255,0,31,.70)!important;
  color:#fff!important;
  font-weight:bold!important;
  text-transform:uppercase;
  text-shadow:0 0 7px #000,0 0 12px rgba(255,0,31,.55)!important;
}
.btn:hover,button:hover,input[type=submit]:hover,input[type=button]:hover{
  background:
    linear-gradient(135deg, transparent 0 8px, rgba(255,0,31,.98) 8px 48%, #210000 48% 100%)!important;
  box-shadow:0 0 22px rgba(255,0,31,.62)!important;
}

/* link */
a{color:#ff424f!important}
a:hover{color:#fff!important;text-shadow:0 0 11px var(--vx-red)!important}

/* immagini e frame principali */
img{
  max-width:100%;
}
.fTelnetContainer,#fTelnetContainer{
  border:28px solid transparent!important;
  border-image:url("../images/cornice.png") 50 round!important;
  box-shadow:0 0 32px rgba(255,0,31,.45), inset 0 0 40px #000!important;
}

/* footer */
footer{
  margin-top:25px;
  padding:16px;
  border-top:2px solid rgba(255,0,31,.52);
  background:linear-gradient(90deg,transparent,rgba(40,0,0,.7),transparent);
  text-align:center;
  color:#b99;
}

/* effetti leggeri */
.veleno-v8-drip{
  position:fixed;
  top:0;
  width:3px;
  height:70px;
  background:linear-gradient(180deg,rgba(255,0,31,.85),transparent);
  pointer-events:none;
  z-index:4;
  opacity:.32;
  animation:vxDrip 7s linear infinite;
}
@keyframes vxDrip{
  0%{transform:translateY(-80px);opacity:0}
  10%{opacity:.42}
  80%{opacity:.28}
  100%{transform:translateY(110vh);opacity:0}
}
.veleno-v8-rune{
  position:absolute;
  right:10px;
  top:7px;
  color:rgba(255,0,31,.38);
  font-size:20px;
  pointer-events:none;
  text-shadow:0 0 12px var(--vx-red);
}

/* mobile: stile forte ma senza rompere layout */
@media (max-width:767px){
  .veleno-main-chamber{
    padding:12px!important;
    border-width:1px;
  }
  .veleno-page-seal{
    font-size:22px;
    padding-left:10px;
    padding-right:10px;
  }
  .veleno-page-seal:before,.veleno-page-seal:after{display:none}
  .navbar-necro-apocalypse .navbar-brand{
    font-size:25px!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li>a{
    max-width:none;
    padding:13px 16px!important;
  }
  .card-header,.panel-heading,.necro-widget .card-header{
    font-size:21px!important;
  }
}

/* riduzione motion */
@media (prefers-reduced-motion:reduce){
  .veleno-v8-drip,.card-header,.panel-heading{animation:none!important}
}

/* ==========================================================================
   Source: root/css/veleno-v8-menu-cut-fix-v2.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ============================================================
   VELENO BBS - V8 MENU CUT FIX V2
   Fix forte: evita che overlay/pseudo-elementi coprano la parte bassa
   delle voci FORUM/FILES e mantiene il testo sopra ogni decorazione.
   ============================================================ */

.navbar-necro-apocalypse{
    position: relative !important;
    overflow: visible !important;
    min-height: 72px !important;
    padding-bottom: 10px !important;
    z-index: 9999 !important;
}

.navbar-necro-apocalypse .navbar-collapse,
.navbar-necro-apocalypse .navbar-nav,
.navbar-necro-apocalypse .navbar-nav > li{
    position: relative !important;
    overflow: visible !important;
    min-height: 66px !important;
    z-index: 10000 !important;
}

/* il testo deve stare sopra a qualsiasi sangue/catena/overlay */
.navbar-necro-apocalypse .navbar-nav > li > a{
    position: relative !important;
    z-index: 10020 !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    min-height: 66px !important;
    line-height: 1.25 !important;
    padding-top: 21px !important;
    padding-bottom: 23px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    background-clip: padding-box !important;
}

/* pseudo-elementi dei link: dietro al testo, mai sopra */
.navbar-necro-apocalypse .navbar-nav > li > a::before,
.navbar-necro-apocalypse .navbar-nav > li > a::after{
    z-index: -1 !important;
    pointer-events: none !important;
}

/* l'effetto sangue sotto la navbar viene spostato più giù e dietro */
.navbar-necro-apocalypse::before{
    z-index: 1 !important;
    bottom: -22px !important;
    height: 18px !important;
    pointer-events: none !important;
}

/* disattiva qualunque maschera/clip che possa tagliare le lettere */
.navbar-necro-apocalypse,
.navbar-necro-apocalypse *,
.navbar-necro-apocalypse *::before,
.navbar-necro-apocalypse *::after{
    clip-path: none !important;
    mask: none !important;
    -webkit-mask: none !important;
}

/* ma ripristina solo l'effetto sangue della navbar, più basso e non sovrapposto */
.navbar-necro-apocalypse::before{
    clip-path: polygon(0 0, 4% 0, 5% 100%, 7% 0, 12% 0, 13% 80%, 15% 0, 100% 0, 100% 30%, 0 30%) !important;
}

/* protezione da eventuali overlay globali caricati dopo */
body::before,
body::after{
    pointer-events: none !important;
}

@media (min-width:768px){
    .navbar-necro-apocalypse .navbar-nav{
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
    }
    .navbar-necro-apocalypse .navbar-nav > li > a{
        min-height: 66px !important;
        padding-top: 21px !important;
        padding-bottom: 23px !important;
    }
}

/* ==========================================================================
   Source: root/css/ansi-editor-modal.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* ═══════════════════════════════════════════════════════════
   ANSI Editor Modal — Draggable / Resizable Window
   ═══════════════════════════════════════════════════════════ */

/* ── Backdrop ── */
.ae-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.55);
}

/* ── Window ── */
.ae-modal-window {
    position: fixed;
    display: flex;
    flex-direction: column;
    background: #1a1a2e;
    border: 1px solid #55FFFF;
    border-radius: 6px;
    box-shadow: 0 0 24px rgba(85, 255, 255, 0.25),
                0 8px 40px rgba(0, 0, 0, 0.6);
    overflow: hidden;
    z-index: 10001;
    min-width: 480px;
    min-height: 360px;
}

/* ── Title bar ── */
.ae-modal-titlebar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 32px;
    padding: 0 10px;
    background: linear-gradient(90deg, rgba(85, 255, 255, 0.15), rgba(255, 85, 255, 0.12));
    border-bottom: 1px solid #55FFFF;
    cursor: grab;
    flex-shrink: 0;
    user-select: none;
}
.ae-modal-titlebar:active {
    cursor: grabbing;
}

.ae-modal-title {
    font-family: 'Spleen', ui-monospace, monospace;
    font-size: 0.82rem;
    color: #55FFFF;
    letter-spacing: 0.04em;
    text-shadow: 0 0 6px rgba(85, 255, 255, 0.4);
}

.ae-modal-close {
    background: none;
    border: 1px solid transparent;
    color: #AAAAAA;
    font-size: 14px;
    cursor: pointer;
    padding: 2px 6px;
    border-radius: 3px;
    line-height: 1;
}
.ae-modal-close:hover {
    color: #FF5555;
    border-color: #FF5555;
    background: rgba(255, 85, 85, 0.1);
}

/* ── Editor body ── */
.ae-modal-body {
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* Make the editor fill the modal body */
.ae-modal-body .me-editor {
    width: 100% !important;
    height: 100% !important;
}

/* ── Resize handle ── */
.ae-modal-resize {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 18px;
    height: 18px;
    cursor: nwse-resize;
    z-index: 10;
}
.ae-modal-resize::after {
    content: '';
    position: absolute;
    right: 3px;
    bottom: 3px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #55FFFF;
    border-bottom: 2px solid #55FFFF;
    opacity: 0.5;
}
.ae-modal-resize:hover::after {
    opacity: 1;
}

/* ── Shake animation (clicking backdrop) ── */
@keyframes ae-shake {
    0%, 100% { transform: translateX(0); }
    20%      { transform: translateX(-6px); }
    40%      { transform: translateX(6px); }
    60%      { transform: translateX(-4px); }
    80%      { transform: translateX(4px); }
}
.ae-modal-shake {
    animation: ae-shake 0.3s ease;
}

/* ==========================================================================
   Source: root/css/necro-sidebar-extreme.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* VELENO NECRO SIDEBAR EXTREME - solo grafica, logica XJS invariata */
:root{--necro-red:#d30000;--necro-hot:#ff2525;--necro-dark:#020100;--necro-bone:#eadfc7;--necro-ash:#80715d;--necro-green:#1eff57;--necro-rust:#5d160b;}
/* Sidebar container hard reset */
#sidebar,.sidebar,.right-sidebar,aside{filter:drop-shadow(0 0 18px rgba(0,0,0,.8));}
.necro-widget,.wo-panel.necro-nodelist{position:relative!important;overflow:hidden!important;margin:0 0 18px!important;border:1px solid rgba(140,0,0,.9)!important;border-radius:2px!important;background:#030201!important;color:var(--necro-bone)!important;font-family:"Courier New",monospace!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),inset 0 0 42px rgba(0,0,0,1),0 0 0 1px rgba(0,0,0,.9),0 0 24px rgba(150,0,0,.42)!important;}
.necro-widget:before,.wo-panel.necro-nodelist:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(120,0,0,.18) 34%,rgba(0,0,0,.34)),url('../images/necro-ui/panel_texture.jpg') center/cover no-repeat!important;opacity:.78;filter:grayscale(.25) contrast(1.55) brightness(.52);}
.necro-widget:after,.wo-panel.necro-nodelist:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),radial-gradient(circle at 0 0,rgba(255,0,0,.28),transparent 38%),radial-gradient(circle at 100% 100%,rgba(255,0,0,.18),transparent 40%),linear-gradient(90deg,rgba(0,0,0,.65),transparent 18%,transparent 82%,rgba(0,0,0,.68));mix-blend-mode:screen;opacity:.52;}
.necro-widget>.card-header,.wo-panel.necro-nodelist>.card-header,.necro-title{position:relative!important;z-index:5!important;display:flex!important;align-items:center!important;gap:9px!important;min-height:44px!important;padding:10px 12px 9px!important;border:0!important;border-bottom:1px solid rgba(255,0,0,.85)!important;background:linear-gradient(180deg,rgba(35,4,4,.98),rgba(3,2,2,.98) 70%,rgba(0,0,0,1))!important;color:var(--necro-hot)!important;font-weight:900!important;font-size:15px!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-shadow:0 0 8px #f00,2px 2px 0 #000!important;box-shadow:inset 0 -12px 20px rgba(0,0,0,.7),0 4px 16px rgba(0,0,0,.9)!important;}
.necro-widget>.card-header:before,.wo-panel.necro-nodelist>.card-header:before,.necro-title:before{content:"☣";display:inline-grid!important;place-items:center!important;width:25px!important;height:25px!important;min-width:25px!important;border:1px solid rgba(255,0,0,.8)!important;background:radial-gradient(circle,rgba(255,0,0,.42),#030000 62%)!important;color:#ff1c1c!important;box-shadow:0 0 13px rgba(255,0,0,.75),inset 0 0 12px #000!important;font-size:15px!important;line-height:1!important;}
.necro-widget>.card-header:after,.wo-panel.necro-nodelist>.card-header:after{content:"";position:absolute;left:0;right:0;bottom:-13px;height:18px;background:linear-gradient(180deg,rgba(126,0,0,.85),transparent);clip-path:polygon(0 0,6% 0,7% 70%,11% 0,18% 0,19% 45%,22% 0,31% 0,32% 80%,35% 0,100% 0,100% 18%,0 18%);opacity:.9;}
.necro-body,.necro-widget .card-body,.wo-panel.necro-nodelist .card-body{position:relative!important;z-index:4!important;background:linear-gradient(90deg,rgba(0,0,0,.74),rgba(37,0,0,.38),rgba(0,0,0,.76))!important;}
.necro-row,.rv-row,.weather-line{position:relative!important;z-index:5!important;display:flex!important;gap:10px!important;align-items:center!important;padding:10px 11px!important;border-top:1px solid rgba(133,0,0,.55)!important;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(73,0,0,.28),rgba(0,0,0,.55))!important;}
.necro-row:hover,.rv-row:hover{background:linear-gradient(90deg,rgba(120,0,0,.52),rgba(0,0,0,.52))!important;filter:brightness(1.22)!important;}
.necro-avatar,.rv-row .avatar-inline,.wo-panel.necro-nodelist .avatar-inline{width:52px!important;height:52px!important;min-width:52px!important;border:1px solid rgba(255,0,0,.75)!important;background:#050000 url('../images/necro-ui/zombie_card.jpg') center/cover no-repeat!important;box-shadow:inset 0 0 18px #000,0 0 16px rgba(255,0,0,.45)!important;filter:grayscale(.35) contrast(1.48) brightness(.7) sepia(.18)!important;}
.necro-avatar.skull,.necro-avatar.user,.rv-row .avatar-inline:not([style]){background-image:url('../images/necro-ui/skull_corner.jpg')!important;}
.necro-label,.rv-alias,.nl-username{color:#fff2d8!important;font-weight:900!important;text-shadow:0 0 8px rgba(255,0,0,.75),1px 1px 0 #000!important;letter-spacing:.04em!important;}
.necro-meta,.rv-when,.rv-loc,.rv-conn,.nl-activity{color:#b9aa8b!important;font-size:.82rem!important;line-height:1.25!important;text-shadow:1px 1px 0 #000!important;}
.necro-red,.necro-blood,.sb-nodes-in-use,.text-danger{color:#ff2525!important;text-shadow:0 0 9px #f00!important;}.sb-nodes-available,.text-success{color:var(--necro-green)!important;text-shadow:0 0 8px rgba(30,255,87,.8)!important;}
.necro-empty,.wo-empty,.wo-loading{position:relative!important;z-index:5!important;margin:0!important;padding:14px 12px!important;color:#d81818!important;text-transform:uppercase!important;letter-spacing:.08em!important;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(110,0,0,.28))!important;text-shadow:0 0 10px #700!important;}.necro-empty:before,.wo-empty:before,.wo-loading:before{content:"☠ ";color:#ff2525;}
.necro-table,.wo-panel.necro-nodelist .table{position:relative!important;z-index:5!important;width:100%!important;margin:0!important;border-collapse:separate!important;border-spacing:0!important;color:var(--necro-bone)!important;background:transparent!important;font-family:"Courier New",monospace!important;}
.necro-table th,.necro-table td,.wo-panel.necro-nodelist .table th,.wo-panel.necro-nodelist .table td{padding:8px 11px!important;border:0!important;border-bottom:1px solid rgba(120,0,0,.5)!important;background:rgba(0,0,0,.23)!important;vertical-align:middle!important;}
.necro-table th,.wo-panel.necro-nodelist .table th{width:43%;color:#f4ead5!important;text-transform:uppercase!important;letter-spacing:.06em!important;text-shadow:0 0 6px rgba(255,0,0,.7)!important;}
.necro-table td,.wo-panel.necro-nodelist .table td{color:#fff8e7!important;}
.necro-table tr:nth-child(odd) th,.necro-table tr:nth-child(odd) td,.wo-panel.necro-nodelist .table tr:nth-child(odd) td{background:rgba(92,0,0,.24)!important;}
.necro-prop{position:absolute!important;z-index:3!important;pointer-events:none!important;opacity:.76!important;filter:drop-shadow(0 0 14px rgba(255,0,0,.42)) contrast(1.15)!important;}
.necro-prop.zombie-left{left:-22px;bottom:-4px;width:92px;height:132px;background:url('../images/necro-ui/zombie_left.jpg') center/cover no-repeat;mask-image:linear-gradient(90deg,black 65%,transparent);opacity:.58!important;}
.necro-prop.zombie-right,.necro-prop.zombie{right:-35px;bottom:-18px;width:120px;height:180px;background:url('../images/necro-ui/zombie_right.jpg') center/cover no-repeat;mask-image:linear-gradient(90deg,transparent,black 25%);opacity:.62!important;}
.necro-prop.skull{right:-18px;bottom:-22px;width:112px;height:100px;background:url('../images/necro-ui/skull_corner.jpg') center/cover no-repeat;border-radius:50%;opacity:.48!important;}
.necro-prop.moon{right:5px;top:5px;width:105px;height:68px;background:url('../images/necro-ui/grave_moon.jpg') center/cover no-repeat;opacity:.28!important;border:1px solid rgba(255,255,255,.08);}
.necro-prop.bloodbag{left:-13px;bottom:-25px;width:75px;height:150px;background:url('../images/necro-ui/blood_bag.jpg') center/cover no-repeat;opacity:.62!important;}
.necro-scroll{position:relative!important;z-index:5!important;max-height:210px!important;overflow:auto!important;scrollbar-color:#8b0000 #060606!important;scrollbar-width:thin!important;}.necro-scroll::-webkit-scrollbar{width:8px}.necro-scroll::-webkit-scrollbar-track{background:#060606}.necro-scroll::-webkit-scrollbar-thumb{background:#8b0000;border:1px solid #210000}
/* Nodelist */
.wo-panel.necro-nodelist .nl-user-cell{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;}.wo-panel.necro-nodelist .nl-user-cell:before{content:"☠";color:#d00000;text-shadow:0 0 8px #f00;}.wo-footer{position:relative!important;z-index:5!important;padding:8px 10px!important;border-top:1px solid rgba(255,0,0,.45)!important;background:rgba(0,0,0,.76)!important;color:#cdbf9f!important;font-size:.76rem!important;text-transform:uppercase!important;letter-spacing:.05em!important}.wo-led{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--necro-green);box-shadow:0 0 9px var(--necro-green);margin-right:5px;}
/* Weather */
.necro-weather-shell{position:relative!important;z-index:5!important;padding:11px!important;background:linear-gradient(135deg,rgba(0,0,0,.85),rgba(85,0,0,.27))!important;}.necro-weather-shell iframe,.necro-weather-shell div[id^="ww_"]{filter:grayscale(.22) contrast(1.22) brightness(.72) sepia(.18)!important;border:1px solid rgba(180,0,0,.65)!important;box-shadow:inset 0 0 24px #000,0 0 12px rgba(255,0,0,.28)!important;}
/* metal corners */
.necro-widget .necro-corner,.wo-panel.necro-nodelist .necro-corner{position:absolute;z-index:7;width:16px;height:16px;border-color:rgba(210,0,0,.8);pointer-events:none}.necro-corner.tl{left:5px;top:5px;border-left:1px solid;border-top:1px solid}.necro-corner.tr{right:5px;top:5px;border-right:1px solid;border-top:1px solid}.necro-corner.bl{left:5px;bottom:5px;border-left:1px solid;border-bottom:1px solid}.necro-corner.br{right:5px;bottom:5px;border-right:1px solid;border-bottom:1px solid}
@media(max-width:991px){.necro-prop{display:none!important}.necro-avatar,.rv-row .avatar-inline,.wo-panel.necro-nodelist .avatar-inline{width:40px!important;height:40px!important;min-width:40px!important}.necro-table th,.necro-table td{font-size:.86rem!important}}

/* 003-systemStats.xjs - pannello uguale al mockup: blood-bag a sinistra + System Info incassato */
.system-stats-panel.hellscreen.system-stats-003{
  min-height:186px!important;
  display:grid!important;
  grid-template-columns:33% 67%!important;
  padding:0!important;
  border-color:rgba(162,0,0,.9)!important;
  background:#020000!important;
  box-shadow:inset 0 0 0 1px rgba(255,0,0,.22),inset 0 0 60px rgba(0,0,0,1),0 0 22px rgba(150,0,0,.36)!important;
}
.system-stats-panel.hellscreen.system-stats-003:before{
  background:
    linear-gradient(90deg,rgba(0,0,0,.2),rgba(0,0,0,.82) 34%,rgba(10,0,0,.9)),
    radial-gradient(circle at 13% 22%,rgba(180,0,0,.35),transparent 20%),
    url('../images/necro-ui/panel_texture.jpg') center/cover no-repeat!important;
  opacity:.95!important;
  filter:contrast(1.7) brightness(.42) grayscale(.22)!important;
}
.system-stats-panel.hellscreen.system-stats-003:after{
  z-index:8!important;
  background:
    linear-gradient(180deg,rgba(255,0,0,.18),transparent 7%,transparent 74%,rgba(0,0,0,.95)),
    repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 5px),
    linear-gradient(90deg,rgba(0,0,0,.72),transparent 18%,transparent 82%,rgba(0,0,0,.86))!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}
.ss003-left-ritual{position:relative!important;z-index:5!important;min-height:186px!important;overflow:hidden!important;border-right:1px solid rgba(140,0,0,.55)!important;background:linear-gradient(180deg,rgba(0,0,0,.85),rgba(31,0,0,.55)),url('../images/necro-ui/zombie_left.jpg') 30% center/cover no-repeat!important;}
.ss003-left-ritual:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.75)),radial-gradient(circle at 12% 45%,rgba(255,0,0,.3),transparent 25%);filter:contrast(1.35);}
.ss003-bloodbag{position:absolute;left:-4px;top:10px;width:72px;height:116px;background:url('../images/necro-ui/blood_bag.jpg') center/cover no-repeat;filter:drop-shadow(0 0 16px rgba(255,0,0,.65)) contrast(1.3) brightness(.72);opacity:.86;}
.ss003-section-word{position:absolute;left:14px;bottom:18px;color:#ff1717;font:900 26px/1 Impact,"Arial Black",sans-serif;letter-spacing:.04em;text-shadow:0 0 6px #f00,0 0 18px #c00000,2px 2px 0 #000;text-transform:uppercase;}
.ss003-section-word:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:#ff0000;box-shadow:0 0 12px #f00;opacity:.55;}
.ss003-info-frame{position:relative!important;z-index:6!important;margin:12px 10px 12px 8px!important;border:1px solid rgba(70,70,70,.78)!important;box-shadow:inset 0 0 24px #000,0 0 10px rgba(0,0,0,.9)!important;background:linear-gradient(180deg,rgba(0,0,0,.65),rgba(8,0,0,.82)),url('../images/necro-ui/panel_texture.jpg') center/cover no-repeat!important;overflow:hidden!important;}
.ss003-info-frame:before{content:"";position:absolute;left:-12px;right:-12px;top:35px;height:1px;background:rgba(150,0,0,.85);box-shadow:0 0 10px #900;z-index:7;}
.system-stats-003 .card-header{min-height:38px!important;padding:9px 10px 7px 12px!important;background:linear-gradient(180deg,rgba(28,0,0,.78),rgba(0,0,0,.92))!important;border-bottom:1px solid rgba(120,0,0,.62)!important;font-size:16px!important;color:#c40000!important;text-shadow:0 0 10px #d00000,2px 2px 0 #000!important;}
.system-stats-003 .card-header:before{content:"☣"!important;width:22px!important;height:22px!important;min-width:22px!important;background:transparent!important;border:0!important;color:#2d2d2d!important;text-shadow:0 0 5px #700!important;box-shadow:none!important;filter:brightness(.75);}
.system-stats-003 .card-header:after{display:none!important;}
.system-stats-003 .card-body{max-height:138px!important;overflow:hidden!important;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.18))!important;}
.system-stats-003 .card-body:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.96));z-index:9;pointer-events:none;}
.system-stats-003 .ss003-table th,.system-stats-003 .ss003-table td{padding:6px 8px!important;border-bottom:0!important;background:transparent!important;font-size:12px!important;line-height:1.14!important;}
.system-stats-003 .ss003-table th{width:46%!important;color:#d8d8cf!important;letter-spacing:.06em!important;text-shadow:0 0 5px #000!important;}
.system-stats-003 .ss003-table td{color:#eee7d8!important;text-shadow:0 0 4px #000!important;white-space:normal!important;}
.system-stats-003 .ss003-table tr:nth-child(odd) th,.system-stats-003 .ss003-table tr:nth-child(odd) td{background:rgba(255,255,255,.015)!important;}
.system-stats-003 .ss003-extra{opacity:.35!important;filter:blur(.35px)!important;}
@media(max-width:991px){
  .system-stats-panel.hellscreen.system-stats-003{grid-template-columns:112px minmax(0,1fr)!important;min-height:178px!important;}
  .ss003-left-ritual{min-height:178px!important;}
  .ss003-section-word{font-size:22px!important;left:13px!important;}
  .ss003-bloodbag{width:62px!important;height:104px!important;}
  .ss003-info-frame{margin:10px 8px!important;}
  .system-stats-003 .ss003-table th,.system-stats-003 .ss003-table td{font-size:11px!important;padding:5px 6px!important;}
}
@media(max-width:420px){
  .system-stats-panel.hellscreen.system-stats-003{grid-template-columns:92px minmax(0,1fr)!important;}
  .ss003-section-word{font-size:19px!important;left:10px!important;}
  .ss003-bloodbag{left:-10px!important;opacity:.74!important;}
}

/* ==========================================================
   SIDEBAR FINAL ALIGNMENT / NO-DOORS FIX
   2026-06-02 - all right-sidebar widgets cleaned and aligned.
   Keeps the extreme horror skin, removes the accidental DOORS
   overlay from System Info, and prevents props from pushing or
   covering live WebV4 content.
   ========================================================== */
.necro-widget,
.wo-panel.necro-nodelist{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    clear:both!important;
    transform:none!important;
}
.necro-widget *,
.wo-panel.necro-nodelist *{
    box-sizing:border-box!important;
}
.necro-widget > .card-header,
.wo-panel.necro-nodelist > .card-header,
.ss003-info-frame > .card-header{
    justify-content:center!important;
    text-align:center!important;
    white-space:normal!important;
}
.necro-widget .card-body,
.wo-panel.necro-nodelist .card-body{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
}
.necro-prop{
    pointer-events:none!important;
    z-index:3!important;
    opacity:.28!important;
}
.rv-panel .card-body,
.wo-panel.necro-nodelist .card-body,
.weather-panel .necro-weather-shell{
    position:relative!important;
    z-index:5!important;
}
.rv-row{
    width:100%!important;
    min-width:0!important;
}
.rv-details{
    min-width:0!important;
    overflow:hidden!important;
}
.rv-alias,
.rv-when,
.rv-loc,
.rv-conn{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.wo-panel.necro-nodelist table,
.system-stats-003 table{
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
}
.wo-panel.necro-nodelist th,
.wo-panel.necro-nodelist td,
.system-stats-003 th,
.system-stats-003 td{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
}
.system-stats-panel.hellscreen.system-stats-003{
    display:block!important;
    min-height:0!important;
    padding:10px!important;
    grid-template-columns:none!important;
    grid-template-areas:none!important;
}
.system-stats-003 .ss003-left-ritual,
.system-stats-003 .ss003-bloodbag,
.system-stats-003 .ss003-section-word{
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
}
.system-stats-003 .ss003-info-frame{
    display:block!important;
    position:relative!important;
    z-index:6!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 auto!important;
    left:auto!important;
    right:auto!important;
    float:none!important;
    transform:none!important;
}
.system-stats-003 .card-body{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    max-height:none!important;
    overflow:hidden!important;
}
.system-stats-003 .card-body:after{
    display:none!important;
}
.system-stats-003 .ss003-table th{
    width:44%!important;
    min-width:0!important;
    padding-left:10px!important;
}
.system-stats-003 .ss003-table td{
    width:56%!important;
    min-width:0!important;
    padding-right:10px!important;
}
.system-stats-003 .ss003-extra{
    opacity:.82!important;
    filter:none!important;
}
.weather-panel .necro-weather-shell iframe,
.weather-panel .necro-weather-shell div{
    max-width:100%!important;
}
@media(max-width:991px){
    .system-stats-panel.hellscreen.system-stats-003{
        display:block!important;
        padding:8px!important;
        grid-template-columns:none!important;
    }
    .system-stats-003 .ss003-info-frame{margin:0 auto!important;}
    .system-stats-003 .ss003-table th,
    .system-stats-003 .ss003-table td{font-size:11px!important;padding:5px 6px!important;}
}
@media(max-width:420px){
    .system-stats-panel.hellscreen.system-stats-003{display:block!important;grid-template-columns:none!important;}
    .system-stats-003 .ss003-table th{width:42%!important;}
    .system-stats-003 .ss003-table td{width:58%!important;}
}

/* FIX: remove invisible/transparent icon placeholder near SYSTEM INFO title */
.system-stats-003 .ss003-info-frame > .card-header::before,
.system-stats-003 .ss003-info-frame > .card-header::after,
.system-stats-003 > .card-header::before,
.system-stats-003 > .card-header::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
}
.system-stats-003 .ss003-info-frame > .card-header{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding-left:10px!important;
    padding-right:10px!important;
}

/* FIX V2: remove the remaining translucent square/ghost panel in System Info header */
.system-stats-003 .ss003-info-frame:before,
.system-stats-003 .ss003-info-frame:after,
.system-stats-003 .card-header:before,
.system-stats-003 .card-header:after,
.system-stats-003 .card-header *:before,
.system-stats-003 .card-header *:after{
    content:none!important;
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
    filter:none!important;
}
.system-stats-003 .card-header{
    position:relative!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,rgba(26,0,0,.96),rgba(2,0,0,.98))!important;
}
.system-stats-003 .ss003-info-frame{
    overflow:hidden!important;
}
/* keep only the external four corner marks, no inner ghost blocks */
.system-stats-003 .card-body{
    position:relative!important;
    z-index:2!important;
}

/* FIX V3: remove the persistent translucent square in SYSTEM INFO.
   Cause: inherited background texture / pseudo overlay from the generic necro-widget skin.
   This keeps the horror frame but removes every image/ghost overlay only from 003-systemStats. */
.system-stats-panel.hellscreen.system-stats-003,
.system-stats-panel.hellscreen.system-stats-003 .ss003-info-frame,
.system-stats-panel.hellscreen.system-stats-003 .card-header,
.system-stats-panel.hellscreen.system-stats-003 .card-body{
    background-image:none!important;
}
.system-stats-panel.hellscreen.system-stats-003::before,
.system-stats-panel.hellscreen.system-stats-003::after,
.system-stats-panel.hellscreen.system-stats-003 .ss003-info-frame::before,
.system-stats-panel.hellscreen.system-stats-003 .ss003-info-frame::after,
.system-stats-panel.hellscreen.system-stats-003 .card-header::before,
.system-stats-panel.hellscreen.system-stats-003 .card-header::after,
.system-stats-panel.hellscreen.system-stats-003 .card-body::before,
.system-stats-panel.hellscreen.system-stats-003 .card-body::after{
    content:none!important;
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    background:none!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    width:0!important;
    height:0!important;
}
.system-stats-panel.hellscreen.system-stats-003{
    display:block!important;
    padding:10px!important;
    background:
      radial-gradient(circle at 50% 0%, rgba(130,0,0,.22), transparent 42%),
      linear-gradient(180deg, #050000 0%, #120000 46%, #020000 100%)!important;
}
.system-stats-panel.hellscreen.system-stats-003 .ss003-info-frame{
    margin:0 auto!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    background:
      linear-gradient(180deg, rgba(24,0,0,.92), rgba(0,0,0,.96))!important;
}
.system-stats-panel.hellscreen.system-stats-003 .card-header{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
    width:100%!important;
    padding:10px 8px!important;
    margin:0!important;
    background:
      linear-gradient(180deg, rgba(45,0,0,.98), rgba(6,0,0,.98))!important;
}
.system-stats-panel.hellscreen.system-stats-003 .card-body{
    background:rgba(0,0,0,.72)!important;
}

/* ==========================================================================
   Source: root/css/necro-ufaults-final.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* NECRO UFAULTS FINAL OVERRIDE - loaded inline + file to avoid cache/path issues */
:root{--uf-blood:#b40012;--uf-blood2:#ff2638;--uf-bone:#e8d7b8;--uf-ash:#0b0909;--uf-rust:#3b0a0a;--uf-green:#91ffbf;}
.necro-ufaults-page, .necro-ufaults-page *{box-sizing:border-box!important;}
.necro-ufaults-page{position:relative!important;overflow:hidden!important;isolation:isolate!important;margin:18px auto!important;padding:26px!important;max-width:1180px!important;color:var(--uf-bone)!important;border:1px solid rgba(255,35,35,.55)!important;background:#070505!important;box-shadow:0 0 0 1px #000 inset,0 0 46px rgba(180,0,18,.45),0 18px 90px #000!important;}
.necro-ufaults-page:before{content:""!important;position:absolute!important;inset:0!important;z-index:-3!important;background:linear-gradient(180deg,rgba(0,0,0,.08),#050303 65%),radial-gradient(circle at 12% 22%,rgba(255,0,0,.35),transparent 22%),radial-gradient(circle at 86% 18%,rgba(170,0,0,.28),transparent 23%),url('../images/necro-ufaults/corpse-bg.jpg') center/cover no-repeat!important;filter:contrast(1.12) saturate(.85)!important;}
.necro-ufaults-page:after{content:""!important;position:absolute!important;inset:0!important;z-index:-2!important;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 5px),linear-gradient(90deg,rgba(0,0,0,.75),transparent 22%,transparent 78%,rgba(0,0,0,.82)),url('../images/necro-ufaults/blood-texture.jpg') top center/100% auto repeat-y!important;mix-blend-mode:screen!important;opacity:.42!important;pointer-events:none!important;}
.necro-ufaults-inner{position:relative!important;padding:18px!important;border:1px solid rgba(180,0,18,.8)!important;background:linear-gradient(135deg,rgba(20,0,0,.82),rgba(0,0,0,.76))!important;box-shadow:inset 0 0 70px #000,0 0 22px rgba(255,0,0,.25)!important;}
.necro-ufaults-inner:before,.necro-ufaults-inner:after{content:""!important;position:absolute!important;top:128px!important;bottom:18px!important;width:min(190px,20vw)!important;opacity:.65!important;filter:drop-shadow(0 0 20px #000) contrast(1.15)!important;pointer-events:none!important;z-index:0!important;}
.necro-ufaults-inner:before{left:-14px!important;background:url('../images/necro-ufaults/left-monster.jpg') left bottom/contain no-repeat!important;}
.necro-ufaults-inner:after{right:-8px!important;background:url('../images/necro-ufaults/right-skull.jpg') right bottom/contain no-repeat!important;}
.necro-ufaults-hero{position:relative!important;z-index:2!important;min-height:240px!important;padding:34px 26px 36px!important;margin-bottom:20px!important;border:1px solid rgba(255,38,56,.7)!important;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.92)),url('../images/necro-ufaults/crypt-header.jpg') center/cover no-repeat!important;box-shadow:inset 0 -75px 85px #050000,0 0 30px rgba(180,0,18,.4)!important;text-align:center!important;}
.necro-ufaults-hero:before{content:"☠  USER FAULTS  ☠"!important;position:absolute!important;left:0!important;right:0!important;top:0!important;padding:8px!important;font:800 12px/1 'Courier New',monospace!important;letter-spacing:.4em!important;color:#ffb3b3!important;background:linear-gradient(90deg,#210000,#74000a,#210000)!important;border-bottom:1px solid rgba(255,255,255,.14)!important;text-shadow:0 0 12px #f00!important;}
.necro-ufaults-kicker{margin-top:24px!important;color:#ff3b4e!important;font:900 13px/1.3 'Courier New',monospace!important;letter-spacing:.28em!important;text-transform:uppercase!important;text-shadow:0 0 10px #000,0 0 18px #f00!important;}
.necro-ufaults-title{margin-top:14px!important;font:900 clamp(38px,7vw,86px)/.86 Georgia,'Times New Roman',serif!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:#f3dbc0!important;text-shadow:0 3px 0 #320000,0 0 18px #ff0018,0 0 50px #000!important;}
.necro-ufaults-sub{max-width:780px!important;margin:18px auto 0!important;color:#d9c2a2!important;font:600 16px/1.55 'Courier New',monospace!important;background:rgba(0,0,0,.55)!important;border:1px solid rgba(255,255,255,.12)!important;padding:10px 14px!important;}
.necro-ufaults-userline{position:relative!important;z-index:2!important;display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important;margin:0 0 16px!important;padding:12px!important;background:linear-gradient(90deg,#150000,#000)!important;border:1px solid rgba(255,0,0,.5)!important;color:#f2e3cb!important;text-transform:uppercase!important;font:800 13px/1.2 'Courier New',monospace!important;box-shadow:inset 0 0 22px #000!important;}
.necro-ufaults-badge{display:inline-block!important;padding:7px 12px!important;background:#7d0009!important;border:1px solid #ff4855!important;color:#fff!important;box-shadow:0 0 14px rgba(255,0,0,.65)!important;}
.necro-ufaults-page form{position:relative!important;z-index:2!important;margin:14px 0!important;}
.necro-ufaults-page table{position:relative!important;z-index:2!important;width:100%!important;border-collapse:separate!important;border-spacing:12px!important;border:0!important;background:rgba(0,0,0,.48)!important;padding:12px!important;box-shadow:inset 0 0 35px #000!important;}
.necro-ufaults-page tr{background:transparent!important;}
.necro-ufaults-page td{vertical-align:top!important;border:1px solid rgba(255,38,56,.45)!important;border-radius:10px!important;background:linear-gradient(180deg,rgba(37,0,0,.94),rgba(0,0,0,.84))!important;padding:15px!important;color:#eadbc2!important;box-shadow:inset 0 0 24px rgba(0,0,0,.9),0 0 12px rgba(130,0,0,.22)!important;font:700 14px/1.45 'Courier New',monospace!important;}
.necro-ufaults-page td:hover{border-color:#ff3045!important;box-shadow:inset 0 0 26px #000,0 0 20px rgba(255,0,0,.38)!important;}
.necro-ufaults-page b,.necro-ufaults-page strong{color:#fff0dc!important;text-shadow:0 0 10px rgba(255,0,0,.7)!important;}
.necro-ufaults-page a{color:#ff596a!important;text-decoration:none!important;border-bottom:1px dotted rgba(255,80,80,.55)!important;}
.necro-ufaults-page input,.necro-ufaults-page select,.necro-ufaults-page textarea{max-width:100%!important;margin-top:7px!important;background:#080606!important;color:#f5e7cf!important;border:1px solid rgba(255,48,69,.65)!important;border-radius:8px!important;padding:8px 10px!important;box-shadow:inset 0 0 14px #000,0 0 8px rgba(255,0,0,.18)!important;font:700 14px 'Courier New',monospace!important;}
.necro-ufaults-page input:focus,.necro-ufaults-page select:focus{outline:none!important;border-color:#ff8190!important;box-shadow:0 0 0 3px rgba(255,0,0,.2),inset 0 0 16px #000!important;}
.necro-ufaults-page input[type=submit],.necro-ufaults-page button{cursor:pointer!important;background:linear-gradient(180deg,#b40012,#3c0005)!important;color:#fff!important;text-transform:uppercase!important;letter-spacing:.12em!important;border:1px solid #ff5b68!important;border-radius:999px!important;padding:10px 18px!important;text-shadow:0 0 10px #000!important;box-shadow:0 0 18px rgba(255,0,0,.46),inset 0 0 14px rgba(255,255,255,.1)!important;}
.necro-ufaults-avatar-panel{background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(40,0,0,.9)),url('../images/necro-ufaults/door-panel.jpg') center/cover no-repeat!important;text-align:center!important;min-height:130px!important;}
.necro-ufaults-avatar-panel canvas,.necro-ufaults-avatar-panel img{image-rendering:pixelated!important;border:1px solid #ff384a!important;box-shadow:0 0 25px #000,0 0 18px rgba(255,0,0,.52)!important;background:#000!important;padding:4px!important;}
.necro-ufaults-save{position:relative!important;z-index:3!important;margin:18px 0!important;padding:18px!important;background:#190000!important;border:1px solid #ff3045!important;color:#fff!important;text-align:center!important;text-transform:uppercase!important;letter-spacing:.12em!important;box-shadow:0 0 22px rgba(255,0,0,.5)!important;}
.necro-ufaults-fog{position:absolute!important;left:-10%!important;right:-10%!important;bottom:-30px!important;height:220px!important;background:url('../images/necro-ufaults/spectral-fog.jpg') center/cover repeat-x!important;opacity:.25!important;mix-blend-mode:screen!important;z-index:1!important;pointer-events:none!important;animation:ufFog 18s linear infinite alternate!important;}
@keyframes ufFog{from{transform:translateX(-2%) scale(1.02)}to{transform:translateX(2%) scale(1.08)}}
@media(max-width:767px){.necro-ufaults-page{margin:10px -8px!important;padding:10px!important}.necro-ufaults-inner{padding:10px!important}.necro-ufaults-hero{min-height:190px!important;padding:30px 12px 22px!important}.necro-ufaults-inner:before,.necro-ufaults-inner:after{opacity:.24!important;width:42vw!important}.necro-ufaults-userline{display:block!important}.necro-ufaults-userline span{display:block!important;margin:6px 0!important}.necro-ufaults-page table,.necro-ufaults-page tbody,.necro-ufaults-page tr,.necro-ufaults-page td{display:block!important;width:100%!important}.necro-ufaults-page table{border-spacing:0!important;padding:6px!important}.necro-ufaults-page td{margin:10px 0!important}.necro-ufaults-page input:not([type=submit]),.necro-ufaults-page select{width:100%!important}}

/* ==========================================================================
   Source: root/css/news.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* news.css — Styles for the webv4 News Reader */

#news-breadcrumb .breadcrumb {
    margin: 0 0 .4rem;
    padding: .65rem 1rem !important;
    border-radius: 8px !important;
}

#news-breadcrumb .breadcrumb li,
#news-breadcrumb .breadcrumb li a,
#news-breadcrumb .breadcrumb .breadcrumb-item,
#news-breadcrumb .breadcrumb .breadcrumb-item a {
    display: inline-flex;
    align-items: center;
}

#news-search-bar {
    margin-bottom: .4rem !important;
}

#news-search-bar .input-group {
    width: 100%;
    display: flex;
    align-items: stretch;
    margin-bottom: 0 !important;
}

#news-search-bar .input-group > .form-control {
    float: none;
    display: block;
    flex: 1 1 auto;
    width: auto;
}

#news-search-input,
#news-search-btn,
#news-search-clear {
    height: 40px;
    min-height: 0;
    box-sizing: border-box;
}

#news-search-btn,
#news-search-clear {
    width: 38px;
    padding: 1px 2px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
}

#news-search-btn {
    background: #000000 !important;
}

#news-search-btn:hover,
#news-search-btn:focus {
    background: #000000 !important;
}

#news-search-btn .bin-icon {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#news-search-btn .bin-icon-img {
    height: 28px;
    width: auto;
    image-rendering: pixelated;
}

/* ── Category grid ─────────────────────────────────────────────────── */

.news-cat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: .75rem;
}

.news-cat-card {
    background: #000;
    border: 1px solid #FFFF55;
    border-radius: .5rem;
    padding: .75rem;
    cursor: pointer;
    text-align: center;
    transition: border-color .15s, box-shadow .15s;
}
.news-cat-card:hover {
    border-color: #FFFF55;
    box-shadow: 0 0 8px rgba(255, 255, 85, .3);
}
.news-cat-card.is-favorites {
    border-color: #AA00AA;
}
.news-cat-card.is-favorites:hover {
    border-color: #AA00AA;
    box-shadow: 0 0 8px rgba(170, 0, 170, .4);
}
.news-cat-card.is-favorites .news-cat-name {
    color: #FF5555;
}
.news-cat-card.is-favorites .news-cat-count {
    color: #55FFFF;
    opacity: 1;
}

.news-cat-icon {
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: .4rem;
    image-rendering: pixelated;
}
.news-cat-icon img {
    max-height: 48px;
    image-rendering: pixelated;
}

.news-cat-name {
    font-weight: 600;
    font-size: .9rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #00AA00;
}

.news-cat-count {
    font-size: .75rem;
    color: #FF55FF;
    opacity: .85;
}

/* ── Feed list ─────────────────────────────────────────────────────── */

.news-feed-list {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #000;
    border-radius: .35rem;
}

.news-feed-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem .65rem;
    background: #000;
    border-bottom: 1px solid #222;
    cursor: pointer;
    transition: background .15s;
}
.news-feed-item:hover {
    background: #111;
}

.news-feed-label {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .9rem;
}

.news-feed-fav {
    background: none;
    border: none;
    font-size: 1.2rem;
    cursor: pointer;
    color: #aaa;
    padding: 0 .35rem 0 0;
    line-height: 1;
    flex-shrink: 0;
    transition: color .15s;
}
.news-feed-fav:hover {
    color: var(--bs-danger, #dc3545);
}
.news-feed-fav.is-favorite {
    color: var(--bs-danger, #dc3545);
}

/* ── Article list ──────────────────────────────────────────────────── */

.news-article-list {
    list-style: none;
    padding: 0;
    margin: 0;
    background: #000;
    border-radius: .35rem;
}

.news-date-divider {
    padding: .5rem .5rem .25rem;
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .55;
    border-bottom: 1px solid #333;
    margin-bottom: .25rem;
    background: #000;
}

.news-article-row {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .6rem .5rem;
    background: #000;
    border-bottom: 1px solid #111;
    cursor: pointer;
    transition: background .15s;
}
.news-article-row:hover {
    background: #111;
}

.news-article-thumb {
    width: 72px;
    height: 54px;
    object-fit: cover;
    border-radius: .25rem;
    flex-shrink: 0;
    background: #111;
}
.placeholder-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    opacity: .3;
}

.news-article-meta {
    flex: 1;
    min-width: 0;
}

.news-article-title {
    font-weight: 600;
    font-size: .88rem;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-article-byline {
    font-size: .75rem;
    opacity: .55;
    margin-top: .15rem;
}

/* ── Article detail ────────────────────────────────────────────────── */

.news-article-detail {
    max-width: 720px;
    margin: 0 auto;
    background: #000;
    padding: 1rem;
    border-radius: .35rem;
}
.news-article-detail h2 {
    font-size: 1.3rem;
    margin-bottom: .35rem;
}
.news-article-detail .article-byline {
    font-size: .8rem;
    opacity: .55;
    margin-bottom: .75rem;
}
.news-article-detail .article-body {
    line-height: 1.65;
    font-size: .92rem;
    margin-bottom: 1rem;
    word-break: break-word;
}
.news-article-detail .article-body img {
    max-width: 100%;
    height: auto;
    border-radius: .25rem;
    margin: .5rem 0;
}
.news-article-detail .article-body a {
    color: var(--bs-primary, #0d6efd);
}
.news-article-detail .news-article-link {
    margin-top: .5rem;
}

/* ── States ────────────────────────────────────────────────────────── */

.news-loading,
.news-error,
.news-empty {
    text-align: center;
    padding: 2rem 1rem;
    opacity: .6;
    background: #000;
    border-radius: .35rem;
}
.news-error {
    color: var(--bs-danger, #dc3545);
    opacity: 1;
}

/* ── Responsive ────────────────────────────────────────────────────── */

@media (max-width: 576px) {
    .news-cat-grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: .5rem;
    }
    .news-article-thumb {
        width: 56px;
        height: 42px;
    }
    .news-article-detail {
        font-size: .85rem;
    }
}

/* ── Newsflip link ── */
#news-fliplink {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.5rem;
}
.news-fliplink-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 4px 10px;
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 6px;
    color: rgba(255,255,255,0.8);
    font-size: 0.85rem;
    text-decoration: none;
    transition: border-color 0.2s, background 0.2s, color 0.2s;
}
.news-fliplink-btn:hover,
.news-fliplink-btn:focus {
    border-color: rgba(255,255,255,0.4);
    background: rgba(255,255,255,0.08);
    color: #fff;
    text-decoration: none;
}
.news-fliplink-btn .bin-icon-img {
    height: 18px;
    width: auto;
    image-rendering: pixelated;
}

/* ── Newsflip link ── */
#news-fliplink {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.5rem;
}
.news-fliplink-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 4px 10px;
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 6px;
    color: rgba(255,255,255,0.8);
    font-size: 0.85rem;
    text-decoration: none;
    transition: border-color 0.2s, background 0.2s, color 0.2s;
}
.news-fliplink-btn:hover,
.news-fliplink-btn:focus {
    border-color: rgba(255,255,255,0.4);
    background: rgba(255,255,255,0.08);
    color: #fff;
    text-decoration: none;
}
.news-fliplink-btn .bin-icon-img {
    height: 18px;
    width: auto;
    image-rendering: pixelated;
}

/* ==========================================================================
   Source: root/css/emu.css
   Centralized into root/css/portal.css
   ========================================================================== */

table.ItemsWithCenteredVals {
   border: 1px solid black;
   border-collapse: collapse;
   border-style:solid;
}

table.ItemsWithCenteredVals th {
   border: 1px solid black;
   border-collapse: collapse;
   border-style:solid;
}

table.ItemsWithCenteredVals td {
   border: 1px solid black;
   border-collapse: collapse;
   border-style:solid;
   text-align: center;
   align: center;
   width: 300px;
}

.system-grid-container {
  display: grid;
  /*grid-template-columns: auto auto auto auto;*/
  grid-template-columns: 420px 420px;
  /*background-color: #2196F3;*/
  background-color: #999999;
  padding: 5px;
  margin: auto;
  /*width: 50%;*/
  width: 840px;
}
.game-grid-container {
  display: grid;
  /*grid-template-columns: auto auto auto auto;*/
  grid-template-columns: 320px 320px;
  /*background-color: #2196F3;*/
  background-color: #999999;
  padding: 5px;
  margin: auto;
  /*width: 50%;*/
  width: 640px;
}
.grid-item {
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.8);
  padding: 5px;
  font-size: 22px;
  text-align: center;
}
.item-span4 {
  grid-column: 1 / span 4; /* Spans 4 columns from the first */
  align: center;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}
.item-span2 {
  grid-column: 1 / span 2; /* Spans 2 columns from the first */
  align: center;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}

/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  width: 300px;
  background-color: black;
  color: #fff;
  text-align: center;
  padding: 5px 0;
  border-radius: 6px;
 
  /* Position the tooltip text - see examples below! */
  position: absolute;
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
}

#overlay {
  position:fixed;
  width:100%;
  height:100%;
  top:0;
  left:0;
  opacity:0.6;
}

/* ==========================================================================
   Source: root/css/navbar-fixed-top.css
   Centralized into root/css/portal.css
   ========================================================================== */

body {
	min-height: 2000px;
	padding-top: 70px;
}

.dropdown-menu {
	max-height: 500px;
	overflow-y: auto;
}

/* ==========================================================================
   Source: root/css/necro-sidebar.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* NECRO APOCALYPSE SIDEBAR - skin only: no Synchronet logic changes */
:root{--necro-red:#a00000;--necro-hot:#ff1a1a;--necro-bone:#e6dcc5;--necro-rust:#6b1d12;--necro-green:#2dff63;--necro-black:#040303;}
.necro-side-card,.necro-side-panel,.wo-panel.necro-nodelist{position:relative!important;overflow:hidden!important;border:1px solid rgba(120,0,0,.82)!important;border-radius:0!important;background:linear-gradient(180deg,rgba(10,7,5,.97),rgba(1,1,1,.96) 55%,rgba(16,0,0,.96))!important;color:var(--necro-bone)!important;box-shadow:inset 0 0 0 1px rgba(255,60,40,.12),inset 0 0 35px #000,0 0 20px rgba(100,0,0,.45)!important;margin-bottom:14px!important;font-family:"Courier New",monospace!important;}
.necro-side-card:before,.necro-side-panel:before,.wo-panel.necro-nodelist:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 10% 5%,rgba(150,0,0,.22),transparent 26%),radial-gradient(circle at 100% 0%,rgba(255,255,255,.08),transparent 19%),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(255,0,0,.025) 0 1px,transparent 1px 13px);mix-blend-mode:screen;opacity:.55;}
.necro-side-card:after,.necro-side-panel:after{content:"";position:absolute;right:-24px;bottom:-22px;width:104px;height:132px;z-index:0;opacity:.32;background:url('../images/necro/sidebar-skull.svg') center/contain no-repeat;filter:drop-shadow(0 0 12px #600);pointer-events:none;}
.necro-side-card>.card-header,.necro-side-panel>.card-header,.wo-panel.necro-nodelist>.card-header{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;gap:8px!important;min-height:42px!important;padding:9px 12px!important;border:0!important;border-bottom:1px solid rgba(255,0,0,.6)!important;background:linear-gradient(180deg,rgba(33,8,6,.92),rgba(0,0,0,.88))!important;color:#d60000!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:900!important;text-shadow:0 0 7px rgba(255,0,0,.9),1px 1px 0 #000!important;}
.necro-side-card>.card-header:before,.necro-side-panel>.card-header:before,.wo-panel.necro-nodelist>.card-header:before{content:"☣"!important;display:grid!important;place-items:center!important;width:25px!important;height:25px!important;border:1px solid rgba(170,0,0,.9)!important;background:radial-gradient(circle,rgba(255,0,0,.24),#030000 65%)!important;color:#ff2020!important;box-shadow:0 0 11px rgba(255,0,0,.65),inset 0 0 10px #000!important;}
.necro-side-card .card-body,.necro-side-panel .card-body,.wo-panel.necro-nodelist .card-body{position:relative!important;z-index:1!important;background:linear-gradient(135deg,rgba(0,0,0,.3),rgba(80,0,0,.12))!important;}
.necro-side-card .card-body:before,.necro-side-panel .card-body:before{content:"";position:absolute;left:8px;top:8px;width:46px;height:60px;opacity:.65;background:url('../images/necro/sidebar-zombie.svg') center/contain no-repeat;filter:grayscale(.2) contrast(1.2) drop-shadow(0 0 8px #300);pointer-events:none;}
.necro-empty,.rv-empty{padding:14px 12px 14px 62px!important;color:#b00000!important;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 8px rgba(255,0,0,.45);background:linear-gradient(90deg,rgba(90,0,0,.28),transparent)!important;}
.necro-empty:before,.rv-empty:before{content:"☠ ";color:#ff1919;}
/* Recent visitors */
.rv-panel.necro-side-card .card-body{padding:6px 0!important;}
.rv-panel.necro-side-card .rv-row{position:relative;z-index:1;display:flex;align-items:center;gap:9px;padding:9px 9px 9px 12px!important;border-top:1px solid rgba(130,0,0,.45)!important;background:linear-gradient(90deg,rgba(80,0,0,.18),transparent 52%);}
.rv-panel.necro-side-card .rv-row:hover{background:linear-gradient(90deg,rgba(150,0,0,.34),rgba(20,0,0,.16));filter:brightness(1.18);}
.rv-panel.necro-side-card .avatar-inline{width:38px!important;height:38px!important;border:1px solid rgba(255,0,0,.75)!important;background:#050000!important;box-shadow:0 0 13px rgba(255,0,0,.38),inset 0 0 12px #000!important;filter:grayscale(.6) contrast(1.35) brightness(.78) sepia(.18)!important;}
.rv-panel.necro-side-card .rv-details{min-width:0;flex:1;}
.rv-panel.necro-side-card .rv-alias{color:#ff2424!important;font-weight:900!important;letter-spacing:.05em;text-transform:uppercase;text-shadow:0 0 7px rgba(255,0,0,.65);}
.rv-panel.necro-side-card .rv-alias:before{content:"☠ ";color:#7e0000;}
.rv-panel.necro-side-card .rv-when{color:#c89a42!important;font-size:.76em!important;}
.rv-panel.necro-side-card .rv-loc{color:#e6dcc5!important;font-size:.75em!important;}
.rv-panel.necro-side-card .rv-conn{color:#888!important;font-size:.73em!important;}
/* System stats */
.necro-system-panel{padding-bottom:2px!important;}
.necro-system-panel:after{background-image:url('../images/necro/sidebar-corpse.svg');right:-14px;bottom:-12px;height:160px;width:95px;opacity:.28;}
.necro-system-panel .necro-system-table{position:relative;z-index:1;margin:0!important;color:var(--necro-bone)!important;background:transparent!important;font-size:.9rem;}
.necro-system-panel .necro-system-table th,.necro-system-panel .necro-system-table td{border-color:rgba(90,20,20,.65)!important;padding:8px 10px!important;background:rgba(0,0,0,.16)!important;vertical-align:middle!important;}
.necro-system-panel .necro-system-table th{width:45%;color:#f3ead7!important;text-transform:uppercase;letter-spacing:.04em;text-shadow:0 0 6px rgba(255,0,0,.28);}
.necro-system-panel .necro-system-table td{color:#efe8d7!important;}
.necro-system-panel .necro-system-table tbody tr:nth-child(odd) th,.necro-system-panel .necro-system-table tbody tr:nth-child(odd) td{background:rgba(100,0,0,.16)!important;}
.necro-system-panel .necro-system-table tbody tr:hover th,.necro-system-panel .necro-system-table tbody tr:hover td{background:rgba(160,0,0,.26)!important;}
.necro-system-panel .sb-nodes-in-use{color:#ff2525!important;text-shadow:0 0 7px #a00;}.necro-system-panel .sb-nodes-available{color:#45ff73!important;text-shadow:0 0 7px #083;}
/* Weather */
.necro-weather-panel .card-body{min-height:120px;padding:10px!important;}
.necro-weather-panel .card-body:before{width:78px;height:78px;left:auto;right:10px;top:10px;background:url('../images/necro/sidebar-moon.svg') center/contain no-repeat;opacity:.55;}
.necro-weather-panel iframe,.necro-weather-panel #ww_265f056a223d0{position:relative;z-index:1;filter:grayscale(.35) contrast(1.25) brightness(.78) sepia(.2) drop-shadow(0 0 10px rgba(130,0,0,.5));border:1px solid rgba(110,0,0,.58)!important;background:#050505!important;}
.necro-weather-panel a{color:#d60000!important;text-shadow:0 0 8px rgba(255,0,0,.6);}
/* Nodelist override */
.wo-panel.necro-nodelist{border-color:rgba(120,0,0,.82)!important;background:linear-gradient(180deg,rgba(10,7,5,.97),rgba(1,1,1,.96) 55%,rgba(16,0,0,.96))!important;}
.wo-panel.necro-nodelist:after{content:""!important;position:absolute;right:-14px;bottom:-24px;width:115px;height:155px;z-index:0;opacity:.25;background:url('../images/necro/sidebar-corpse.svg') center/contain no-repeat!important;filter:drop-shadow(0 0 14px #500);}
.wo-panel.necro-nodelist .table td,.wo-panel.necro-nodelist .table th{border-color:rgba(100,20,20,.62)!important;}
.wo-panel.necro-nodelist .nl-user-cell:before{content:"☣"!important;color:#c00000!important;}
@media(max-width:768px){.necro-side-card:after,.necro-side-panel:after,.wo-panel.necro-nodelist:after{opacity:.16}.necro-side-card .card-body:before,.necro-side-panel .card-body:before{opacity:.35}}

/* ==========================================================================
   Source: root/css/necro-ufaults.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* VELENO BBS - User Settings / ufaults nightmare panel */
.necro-ufaults-page{
  position:relative;
  margin:18px auto 32px;
  max-width:1180px;
  padding:18px;
  color:#ead8c8;
  background:
    radial-gradient(circle at 18% 10%, rgba(150,0,0,.28), transparent 32%),
    radial-gradient(circle at 88% 5%, rgba(210,210,210,.08), transparent 24%),
    linear-gradient(180deg, rgba(16,0,0,.93), rgba(3,3,3,.96));
  border:1px solid rgba(190,0,0,.58);
  box-shadow:0 0 38px rgba(120,0,0,.45), inset 0 0 45px rgba(0,0,0,.85);
  overflow:hidden;
}
.necro-ufaults-page:before{
  content:"";
  position:absolute; inset:0;
  background:url('../images/necro-apocalypse/apoc-bg.jpg') center/cover no-repeat;
  opacity:.18; filter:contrast(1.25) saturate(.75);
  pointer-events:none;
}
.necro-ufaults-page:after{
  content:"";
  position:absolute; left:0; right:0; top:0; height:118px;
  background:url('../images/necro-apocalypse/apoc-header.jpg') center/cover no-repeat;
  opacity:.27; mix-blend-mode:screen; pointer-events:none;
}
.necro-ufaults-inner{position:relative; z-index:2;}
.necro-ufaults-hero{
  min-height:170px;
  padding:22px 22px 18px 170px;
  border:1px solid rgba(255,30,30,.42);
  background:
    linear-gradient(90deg, rgba(0,0,0,.82), rgba(65,0,0,.55), rgba(0,0,0,.72)),
    url('../images/necro-apocalypse/zombie-left.jpg') left bottom/150px auto no-repeat,
    url('../images/necro-apocalypse/skull-corner.jpg') right top/140px auto no-repeat;
  box-shadow:inset 0 0 32px #000, 0 0 22px rgba(130,0,0,.36);
  margin-bottom:18px;
}
.necro-ufaults-kicker{font:700 12px/1.1 'Courier New',monospace; letter-spacing:4px; color:#ff3a2e; text-transform:uppercase; text-shadow:0 0 9px #b00000;}
.necro-ufaults-title{font-family:'Courier New',monospace; font-size:clamp(28px,5vw,58px); font-weight:900; margin:8px 0 4px; color:#f3e6d9; letter-spacing:2px; text-transform:uppercase; text-shadow:0 0 6px #000, 0 0 18px #990000, 3px 3px 0 #200;}
.necro-ufaults-sub{font:600 14px/1.5 'Courier New',monospace; color:#cbb1a0; max-width:720px;}
.necro-ufaults-userline{
  display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:12px 0 16px; padding:12px 14px;
  border:1px solid rgba(170,0,0,.46); background:rgba(0,0,0,.62); box-shadow:inset 0 0 18px #000;
  font-family:'Courier New',monospace; color:#f4d6c2;
}
.necro-ufaults-badge{display:inline-block; padding:5px 9px; border:1px solid #7d0000; background:linear-gradient(#2b0000,#090000); color:#ff594f; text-shadow:0 0 8px #b00000;}
.necro-ufaults-page form{margin:0;}
.necro-ufaults-page table{
  width:100%!important; border-collapse:separate!important; border-spacing:0 10px!important; border:0!important;
  font-family:'Courier New',monospace;
}
.necro-ufaults-page td{
  border:1px solid rgba(155,0,0,.58)!important; padding:13px!important; vertical-align:top;
  background:linear-gradient(180deg, rgba(26,0,0,.88), rgba(6,6,6,.93));
  box-shadow:inset 0 0 18px rgba(0,0,0,.92), 0 0 10px rgba(80,0,0,.25);
  color:#e8d4c4;
}
.necro-ufaults-page b{color:#ffddd2; text-transform:uppercase; letter-spacing:.7px;}
.necro-ufaults-page a{color:#ff6259!important; text-decoration:none; text-shadow:0 0 8px rgba(255,0,0,.55);}
.necro-ufaults-page input,.necro-ufaults-page select{
  max-width:100%; border:1px solid #7d0000; border-radius:0; background:#080606; color:#f2dacb;
  padding:7px 9px; box-shadow:inset 0 0 12px #000, 0 0 8px rgba(120,0,0,.22); outline:none;
}
.necro-ufaults-page input:focus,.necro-ufaults-page select:focus{border-color:#ff3328; box-shadow:0 0 14px rgba(255,20,10,.55), inset 0 0 10px #000;}
.necro-ufaults-page input[type=submit]{
  margin:14px 0; cursor:pointer; font-weight:900; text-transform:uppercase; letter-spacing:2px;
  background:linear-gradient(180deg,#7a0000,#210000 55%,#050505); color:#ffe4d4; border:1px solid #ff2b22;
  box-shadow:0 0 18px rgba(180,0,0,.55), inset 0 0 18px #000;
}
.necro-ufaults-page input[type=submit]:hover{filter:brightness(1.25); transform:translateY(-1px);}
.necro-ufaults-avatar-panel{position:relative; min-height:120px; background:url('../images/necro-apocalypse/blood-bag.jpg') right bottom/115px auto no-repeat, linear-gradient(180deg,rgba(20,0,0,.9),rgba(0,0,0,.95))!important;}
.necro-ufaults-save{padding:16px; border:1px solid #7d0000; background:rgba(0,0,0,.65); color:#ffb8a8; font-family:'Courier New',monospace;}
@media(max-width:767px){
  .necro-ufaults-page{margin:8px 0; padding:10px;}
  .necro-ufaults-hero{padding:120px 12px 14px; background-size:120px auto, 105px auto;}
  .necro-ufaults-title{font-size:32px; word-break:break-word;}
  .necro-ufaults-page table,.necro-ufaults-page tbody,.necro-ufaults-page tr,.necro-ufaults-page td{display:block!important; width:100%!important; box-sizing:border-box;}
  .necro-ufaults-page td{margin-bottom:10px;}
  .necro-ufaults-page input,.necro-ufaults-page select{width:100%!important; margin-top:6px;}
}

/* ==========================================================================
   Source: root/css/necro-ufaults-extreme.css
   Centralized into root/css/portal.css
   ========================================================================== */

/* VELENO BBS - UFAULTS EXTREME SPECTRAL REWORK */
html body{
  background:#020000!important;
}
.necro-ufaults-page{
  --veneno-red:#d20808;
  --veneno-red2:#ff382c;
  --bone:#f1dfcb;
  --ash:#a9988b;
  max-width:1280px!important;
  margin:22px auto 44px!important;
  padding:0!important;
  border:1px solid rgba(255,42,30,.72)!important;
  background:
    linear-gradient(180deg,rgba(3,0,0,.2),rgba(3,0,0,.95)),
    url('../images/necro-ufaults/corpse-bg.jpg') center top/cover fixed no-repeat!important;
  box-shadow:0 0 90px rgba(160,0,0,.38), inset 0 0 120px rgba(0,0,0,.98)!important;
  clip-path:polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 16px 100%, 0 calc(100% - 16px));
}
.necro-ufaults-page:before{
  opacity:.38!important;
  background:
    radial-gradient(circle at 50% 15%,rgba(255,255,255,.09),transparent 16%),
    radial-gradient(circle at 18% 35%,rgba(250,0,0,.22),transparent 24%),
    url('../images/necro-ufaults/spectral-fog.jpg') center/cover no-repeat!important;
  mix-blend-mode:screen;
  animation:ufaultsFogPulse 8s ease-in-out infinite;
}
.necro-ufaults-page:after{
  height:auto!important; bottom:0!important;
  background:
    linear-gradient(90deg,rgba(255,0,0,.08) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.04) 1px,transparent 1px),
    radial-gradient(circle at 75% 25%,rgba(255,0,0,.2),transparent 21%),
    url('../images/necro-ufaults/blood-texture.jpg') center/cover no-repeat!important;
  background-size:24px 24px,24px 24px,auto,cover!important;
  opacity:.32!important;
  mix-blend-mode:color-dodge!important;
  pointer-events:none;
}
.necro-ufaults-inner{
  padding:22px!important;
  isolation:isolate;
}
.necro-ufaults-inner:before,
.necro-ufaults-inner:after{
  content:"";
  position:fixed;
  bottom:0;
  width:min(32vw,330px);
  height:min(62vh,620px);
  background-size:contain;
  background-repeat:no-repeat;
  pointer-events:none;
  opacity:.34;
  z-index:1;
  filter:contrast(1.2) saturate(.72) drop-shadow(0 0 24px rgba(180,0,0,.45));
}
.necro-ufaults-inner:before{left:0;background-image:url('../images/necro-ufaults/left-monster.jpg');background-position:left bottom;mix-blend-mode:screen;}
.necro-ufaults-inner:after{right:0;background-image:url('../images/necro-ufaults/right-skull.jpg');background-position:right bottom;mix-blend-mode:lighten;}
.necro-ufaults-hero{
  position:relative;
  min-height:315px!important;
  padding:36px 34px 28px 34px!important;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  border:1px solid rgba(255,57,43,.72)!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.88)),
    linear-gradient(90deg,rgba(0,0,0,.9),rgba(56,0,0,.35),rgba(0,0,0,.8)),
    url('../images/necro-ufaults/crypt-header.jpg') center/cover no-repeat!important;
  box-shadow:inset 0 0 95px #000, 0 0 52px rgba(180,0,0,.42)!important;
  overflow:hidden;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 28px),calc(100% - 28px) 100%,0 100%);
}
.necro-ufaults-hero:before{
  content:"";
  position:absolute; left:0; right:0; top:0; height:100px;
  background:repeating-linear-gradient(90deg,transparent 0 25px,rgba(255,0,0,.26) 26px 28px),linear-gradient(180deg,rgba(80,0,0,.75),transparent);
  opacity:.7;
}
.necro-ufaults-hero:after{
  content:"⚠ ACCOUNT TOMBS / IDENTITY CHAMBER ⚠";
  position:absolute; right:18px; top:16px;
  max-width:360px;
  color:#ff6a5b;
  font:900 12px/1.25 'Courier New',monospace;
  letter-spacing:3px;
  text-align:right;
  text-shadow:0 0 12px #ff0000;
}
.necro-ufaults-kicker{
  font-size:13px!important;
  color:#ff4a3f!important;
  background:rgba(0,0,0,.58);
  width:max-content;
  max-width:100%;
  padding:7px 12px;
  border-left:4px solid #ff2418;
  box-shadow:0 0 22px rgba(180,0,0,.45);
}
.necro-ufaults-title{
  font-size:clamp(42px,8vw,98px)!important;
  line-height:.86!important;
  color:#fff2df!important;
  letter-spacing:4px!important;
  text-shadow:0 2px 0 #3b0000,0 0 14px #ff1306,0 0 42px #7d0000,5px 7px 0 #070000!important;
  filter:drop-shadow(0 0 10px rgba(255,0,0,.36));
}
.necro-ufaults-sub{
  max-width:820px!important;
  padding:12px 14px;
  margin-top:10px;
  color:#f0d1bd!important;
  background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(40,0,0,.45),transparent);
  border-left:1px solid rgba(255,0,0,.65);
  text-transform:uppercase;
  letter-spacing:1px;
}
.necro-ufaults-userline{
  position:relative;
  z-index:3;
  display:grid!important;
  grid-template-columns:auto 1fr 1fr;
  gap:12px!important;
  margin:20px 0!important;
  padding:16px!important;
  border:1px solid rgba(255,45,34,.72)!important;
  background:
    linear-gradient(90deg,rgba(22,0,0,.96),rgba(0,0,0,.84)),
    url('../images/necro-ufaults/door-panel.jpg') right center/auto 130% no-repeat!important;
  box-shadow:inset 0 0 35px #000,0 0 30px rgba(115,0,0,.38)!important;
}
.necro-ufaults-badge{
  font-size:18px;
  padding:9px 14px!important;
  background:linear-gradient(180deg,#a00000,#1c0000 60%,#000)!important;
  border-color:#ff4438!important;
}
.necro-ufaults-page form[action*='003-doors']{
  position:relative;
  z-index:4;
  margin:-8px 0 18px!important;
}
.necro-ufaults-page form[action*='003-doors'] input[type=submit]{
  width:auto!important;
  min-width:220px;
  padding:12px 18px!important;
  transform:skew(-6deg);
}
.necro-ufaults-page form[action*='003-doors'] input[type=submit]:before{content:"";}
.necro-ufaults-page table{
  position:relative;
  z-index:3;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px!important;
  border-spacing:0!important;
  background:transparent!important;
}
.necro-ufaults-page tbody,
.necro-ufaults-page tr{display:contents!important;}
.necro-ufaults-page td{
  position:relative;
  min-height:106px;
  padding:18px 18px 16px!important;
  border:1px solid rgba(255,50,40,.62)!important;
  background:
    linear-gradient(180deg,rgba(34,0,0,.88),rgba(4,4,4,.96)),
    url('../images/necro-ufaults/blood-texture.jpg') center/cover no-repeat!important;
  box-shadow:inset 0 0 38px rgba(0,0,0,.98), 0 0 21px rgba(120,0,0,.3)!important;
  overflow:hidden;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);
}
.necro-ufaults-page td:before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,.06),transparent 32%,rgba(255,0,0,.08));
  opacity:.8; pointer-events:none;
}
.necro-ufaults-page td:after{
  content:"// encrypted flesh record";
  position:absolute; right:10px; bottom:7px;
  color:rgba(255,80,70,.35);
  font:700 9px/1 'Courier New',monospace;
  letter-spacing:1px;
  text-transform:uppercase;
}
.necro-ufaults-page b,
.necro-ufaults-page strong{
  color:#fff1df!important;
  text-shadow:0 0 10px rgba(255,0,0,.52)!important;
}
.necro-ufaults-page input,
.necro-ufaults-page select{
  min-height:38px;
  background:linear-gradient(180deg,#090707,#120000)!important;
  border:1px solid rgba(255,56,45,.62)!important;
  color:#fff0df!important;
  caret-color:#ff2117;
  box-shadow:inset 0 0 16px #000,0 0 14px rgba(135,0,0,.24)!important;
}
.necro-ufaults-page input[type=text],
.necro-ufaults-page select{
  margin-left:6px;
}
.necro-ufaults-page input:focus,
.necro-ufaults-page select:focus{
  outline:2px solid rgba(255,33,23,.5)!important;
  background:#000!important;
}
.necro-ufaults-page input[type=submit]{
  position:relative;
  z-index:5;
  border:1px solid #ff6c5d!important;
  background:linear-gradient(180deg,#c80000,#4b0000 55%,#020000)!important;
  color:#fff4e7!important;
  padding:12px 22px!important;
  min-height:46px!important;
  font-size:14px!important;
  text-shadow:0 0 10px #000,0 0 10px #ff0000;
}
.necro-ufaults-page input[type=submit]:hover{
  filter:brightness(1.45) contrast(1.2)!important;
  box-shadow:0 0 34px rgba(255,20,12,.7), inset 0 0 22px #000!important;
}
.necro-ufaults-avatar-panel{
  grid-row:span 2;
  min-height:220px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.92)),
    url('../images/necro-ufaults/right-skull.jpg') center/cover no-repeat!important;
}
.necro-ufaults-avatar-panel canvas,
.necro-ufaults-avatar-panel img{
  image-rendering:pixelated;
  transform:scale(1.65);
  filter:drop-shadow(0 0 16px #ff0000) contrast(1.15);
}
.necro-ufaults-save{
  margin:20px 0;
  border:1px solid #ff3b31!important;
  background:linear-gradient(90deg,#210000,#000)!important;
  font-size:18px;
  text-shadow:0 0 12px #ff0000;
}
.necro-ufaults-ritual-strip{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:16px 0 20px;
}
.necro-ufaults-ritual-card{
  min-height:132px;
  padding:16px;
  border:1px solid rgba(255,50,40,.58);
  background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.9)),var(--ritual-img) center/cover no-repeat;
  box-shadow:inset 0 0 45px #000,0 0 24px rgba(100,0,0,.28);
  color:#f4dfcf;
  font-family:'Courier New',monospace;
  text-transform:uppercase;
  letter-spacing:1px;
}
.necro-ufaults-ritual-card b{display:block;color:#ff4b40!important;font-size:18px;margin-bottom:5px;}
.necro-ufaults-ritual-card:nth-child(1){--ritual-img:url('../images/necro-ufaults/left-monster.jpg');}
.necro-ufaults-ritual-card:nth-child(2){--ritual-img:url('../images/necro-ufaults/door-panel.jpg');}
.necro-ufaults-ritual-card:nth-child(3){--ritual-img:url('../images/necro-ufaults/right-skull.jpg');}
.necro-ufaults-sigil{
  position:absolute;
  z-index:4;
  top:302px;
  right:34px;
  width:108px;height:108px;
  border:1px solid rgba(255,42,32,.8);
  border-radius:50%;
  box-shadow:0 0 30px rgba(255,0,0,.5), inset 0 0 35px #000;
  background:radial-gradient(circle,rgba(255,0,0,.32),transparent 58%),rgba(0,0,0,.56);
  display:flex;align-items:center;justify-content:center;
  color:#ff493e;font:900 48px/1 serif;
  text-shadow:0 0 18px #ff0000;
  animation:ufaultsSigil 9s linear infinite;
}
.necro-ufaults-sigil:before{content:"☠";}
.necro-ufaults-ghost{
  position:absolute;
  z-index:4;
  width:90px;height:140px;
  pointer-events:none;
  background:radial-gradient(ellipse at 50% 28%,rgba(255,255,255,.22),rgba(210,210,210,.08) 36%,transparent 68%);
  filter:blur(.3px);
  opacity:.45;
  animation:ufaultsGhost 13s ease-in-out infinite;
}
.necro-ufaults-ghost.g1{left:8%;top:280px;}
.necro-ufaults-ghost.g2{right:16%;top:520px;animation-delay:-5s;opacity:.28;}
@keyframes ufaultsFogPulse{0%,100%{opacity:.23;transform:scale(1)}50%{opacity:.44;transform:scale(1.04)}}
@keyframes ufaultsSigil{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes ufaultsGhost{0%,100%{transform:translateY(0) translateX(0);opacity:.22}50%{transform:translateY(-26px) translateX(18px);opacity:.5}}
@media(max-width:991px){
  .necro-ufaults-page table{grid-template-columns:1fr!important;}
  .necro-ufaults-ritual-strip{grid-template-columns:1fr;}
  .necro-ufaults-userline{grid-template-columns:1fr!important;}
  .necro-ufaults-inner:before,.necro-ufaults-inner:after{opacity:.16;width:45vw;}
  .necro-ufaults-sigil{top:250px;right:18px;width:74px;height:74px;font-size:34px;}
}
@media(max-width:767px){
  .necro-ufaults-page{margin:8px 0 28px!important;clip-path:none;}
  .necro-ufaults-inner{padding:12px!important;}
  .necro-ufaults-hero{min-height:245px!important;padding:74px 16px 18px!important;}
  .necro-ufaults-hero:after{left:16px;right:16px;text-align:left;font-size:10px;}
  .necro-ufaults-title{font-size:clamp(38px,16vw,64px)!important;letter-spacing:1px!important;}
  .necro-ufaults-sub{font-size:12px!important;}
  .necro-ufaults-page input[type=text],.necro-ufaults-page select{width:100%!important;margin:6px 0 0!important;}
  .necro-ufaults-avatar-panel canvas,.necro-ufaults-avatar-panel img{transform:scale(1.15);}
}

/* ========================================================================== 
   VELENO - HORROR BALANCED THEME PATCH
   Obiettivo: meno rosso dominante, più palette macabra, senza svuotare lo stile.
   Mantiene elementi horror/illustrazioni/nebbia/presenza visiva, ma attenua sangue,
   glow e flicker troppo invasivi.
   ========================================================================== */
:root{
  --portal-accent:#6f1f3d;
  --portal-accent-2:#3f7f5b;
  --portal-border:rgba(95,126,92,.42);
  --portal-shadow:0 0 18px rgba(60,90,70,.22);
}

body,
.dark body,
body.dark{
  background-color:#050505!important;
  color:#d8d1c2!important;
}

/* Palette horror meno rossa: sangue secco + verde marcio + viola livido */
:root,
body{
  --vh-blood:#5b1828!important;
  --vh-blood2:#7a2636!important;
  --vh-hot:#8d385e!important;
  --vh-toxic:#78955f!important;
  --vh-glow:rgba(120,149,95,.22)!important;
  --vh-red:#6e1b2b!important;
  --vh-red2:#9b3b56!important;
  --necro-blood:#5f1825!important;
  --necro-blood2:#361018!important;
  --necro-red:#9a3b50!important;
  --necro-green:#6f9563!important;
  --necro-ember:#9d7441!important;
  --veleno-blood:#6b1c2d!important;
  --veleno-blood-hot:#a13b58!important;
  --vx-red:#a13b58!important;
}

/* Link, bottoni e accenti: più cupi, meno “rosso acceso” */
a,
.dark a{
  color:#93ad79!important;
}
a:hover,
a:focus{
  color:#c4b47d!important;
  text-decoration:none!important;
}
.btn-primary,
.btn-danger,
.label-danger,
.badge.new,
.pagination>.active>a,
.pagination>li>a:hover,
.progress-bar{
  background:linear-gradient(135deg,#4b1c2b,#556d44)!important;
  border-color:#7b6040!important;
  color:#f1ead7!important;
  box-shadow:0 0 10px rgba(85,109,68,.24)!important;
}

.navbar,
.dark .navbar,
.navbar-default{
  background:linear-gradient(180deg,#090907,#120b0d 58%,#070707)!important;
  border-bottom-color:rgba(112,89,55,.55)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.55),0 0 12px rgba(85,109,68,.16)!important;
}
.navbar a,
.navbar-brand,
.dark .navbar-brand{
  color:#d7ccb6!important;
  text-shadow:0 0 7px rgba(85,109,68,.24)!important;
}
.navbar a:hover,
.navbar-brand:hover{
  color:#a9bd81!important;
  background-color:rgba(85,109,68,.12)!important;
}

.panel,
.card,
.well,
.list-group-item,
.dropdown-menu,
.necro-widget{
  background-color:#0c0b0a!important;
  border-color:rgba(108,92,58,.45)!important;
  color:#d8d1c2!important;
  box-shadow:0 0 14px rgba(0,0,0,.48), inset 0 0 18px rgba(70,90,55,.05)!important;
}
.panel-heading,
.card-header,
.necro-widget .card-header,
#sidebar .card-header{
  background:linear-gradient(90deg,rgba(45,24,32,.88),rgba(18,24,18,.78))!important;
  border-bottom-color:rgba(121,101,62,.48)!important;
  color:#e2d7bf!important;
}

/* Titoli: mantieni carattere horror, togli il flicker aggressivo */
h1,h2,h3,h4,h5,.panel-title,.page-header{
  color:#e7ddc8!important;
  text-shadow:1px 1px 0 #000,0 0 10px rgba(105,132,83,.24),0 0 16px rgba(91,24,40,.20)!important;
  animation:none!important;
}
h1:after,h2:after,h3:after,.panel-title:after{
  color:#8ea36d!important;
  animation:none!important;
  border-right-color:rgba(142,163,109,.55)!important;
}

/* Effetti: non eliminarli tutti, solo renderli meno pesanti */
body:before{
  opacity:.08!important;
  animation:none!important;
}
.necro-fog{
  opacity:.34!important;
  filter:blur(14px)!important;
  animation:necroFogMove 34s linear infinite!important;
}
.necro-fog-2{
  opacity:.22!important;
  filter:blur(20px)!important;
  animation:necroFogMove2 42s linear infinite!important;
}
.necro-bats{
  opacity:.38!important;
  animation:necroBats 28s linear infinite!important;
}
.necro-blood-rain,
.veleno-blood-flicker{
  display:none!important;
}
body.necro-ready .necro-apocalypse-hero:before,
body.necro-ready .necro-apocalypse-hero:after{
  opacity:.72!important;
  animation:none!important;
}
.panel:after,.card:after,.well:after,.necro-widget:after,
.navbar:after{
  opacity:.22!important;
  filter:sepia(.45) saturate(.72) hue-rotate(38deg) brightness(.78)!important;
}

/* Form e tabelle più leggibili */
.form-control,
input,
select,
textarea{
  background-color:#0a0a09!important;
  color:#e1d8c5!important;
  border-color:rgba(121,101,62,.55)!important;
  box-shadow:inset 0 0 8px rgba(0,0,0,.48)!important;
}
.form-control:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:#879969!important;
  box-shadow:0 0 10px rgba(135,153,105,.24)!important;
}
.table-striped>tbody>tr:nth-child(odd)>td,
.striped:nth-of-type(even){
  background-color:#11100e!important;
}
.table>tbody>tr:hover>td,
.list-group-item:hover{
  background-color:rgba(85,109,68,.16)!important;
}

/* Mobile: mantiene il tema senza sovraccaricare lo schermo piccolo */
@media (max-width:767px){
  .necro-fog,.necro-fog-2{opacity:.18!important;}
  .necro-bats{opacity:.20!important;}
  .panel:after,.card:after,.well:after,.necro-widget:after,.navbar:after{opacity:.14!important;}
  h1,h2,h3{letter-spacing:.06em!important;text-shadow:1px 1px 0 #000,0 0 8px rgba(105,132,83,.20)!important;}
}

/* ========================================================================== 
   VELENO UI/UX POLISH PASS - homepage, menu, components, admin, mobile, performance
   Obiettivo: impatto visivo migliore senza stravolgere il tema horror equilibrato.
   ========================================================================== */
:root{
  --ui-bg:#070807;
  --ui-surface:#0d0d0b;
  --ui-surface-2:#14130f;
  --ui-border:rgba(142,126,84,.44);
  --ui-border-strong:rgba(169,150,98,.62);
  --ui-bone:#e8dec8;
  --ui-muted:#aaa087;
  --ui-poison:#8fa66a;
  --ui-plague:#2d7564;
  --ui-bruise:#6f597f;
  --ui-blood:#7e1727;
  --ui-shadow:0 16px 40px rgba(0,0,0,.58);
  --ui-radius:14px;
  --ui-radius-sm:10px;
}

html{scroll-behavior:smooth;}
body{
  background-color:var(--ui-bg)!important;
  color:var(--ui-bone)!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body::before{opacity:.10!important;}
body::after{opacity:.22!important;}

/* Homepage: più impatto, ma meno caos */
.veleno-main-chamber{
  background:
    linear-gradient(180deg,rgba(13,13,11,.90),rgba(7,8,7,.94)),
    radial-gradient(circle at 10% 0%,rgba(143,166,106,.11),transparent 28%),
    radial-gradient(circle at 88% 8%,rgba(111,89,127,.12),transparent 32%)!important;
  border:1px solid var(--ui-border)!important;
  border-radius:var(--ui-radius)!important;
  box-shadow:var(--ui-shadow), inset 0 0 0 1px rgba(255,255,255,.025)!important;
  padding:clamp(14px,2.2vw,26px)!important;
  overflow:hidden;
}
.veleno-main-chamber:before,
.veleno-main-chamber:after{opacity:.28!important;filter:saturate(.72) sepia(.18)!important;}
body.necro-ready .necro-apocalypse-hero{
  border-radius:0 0 var(--ui-radius) var(--ui-radius)!important;
  border-bottom:1px solid var(--ui-border)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.55)!important;
  min-height:clamp(150px,20vw,260px)!important;
}
.necro-tiles,
.necro-apocalypse-tiles{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(10px,1.8vw,18px)!important;
  margin:18px 0 24px!important;
}
.necro-tiles .necro-tile,
.necro-apocalypse-tiles .tile{
  min-height:128px!important;
  border-radius:var(--ui-radius)!important;
  border:1px solid var(--ui-border)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.18)),
    radial-gradient(circle at 20% 20%,rgba(143,166,106,.20),transparent 40%),
    linear-gradient(135deg,rgba(20,19,15,.98),rgba(9,9,8,.98))!important;
  box-shadow:0 14px 28px rgba(0,0,0,.46)!important;
  transform:none!important;
  transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease!important;
}
.necro-tiles .necro-tile:hover,
.necro-apocalypse-tiles .tile:hover{
  border-color:var(--ui-border-strong)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.56),0 0 18px rgba(143,166,106,.16)!important;
}
.necro-tiles .necro-tile b{color:var(--ui-bone)!important;letter-spacing:.10em!important;}
.necro-tiles .necro-tile small{color:var(--ui-muted)!important;}
#fTelnetContainer,.fTelnetContainer{
  border-width:16px!important;
  border-radius:var(--ui-radius-sm)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.58),0 0 18px rgba(45,117,100,.13)!important;
  max-width:100%!important;
}

/* Menu moderno: compatto, leggibile, dropdown più puliti */
.navbar,
.navbar-necro-apocalypse,
.navbar-default{
  position:sticky!important;
  top:0!important;
  z-index:10050!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-radius:0 0 16px 16px!important;
  background:linear-gradient(180deg,rgba(13,13,11,.96),rgba(7,7,6,.94))!important;
  border-color:var(--ui-border)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.62)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a,
.navbar-default .navbar-nav>li>a,
.navbar a{
  border-radius:10px!important;
  margin:8px 3px!important;
  min-height:46px!important;
  letter-spacing:.055em!important;
  color:var(--ui-bone)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.006))!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a:hover,
.navbar-necro-apocalypse .navbar-nav>.open>a,
.navbar-default .navbar-nav>li>a:hover,
.navbar a:hover{
  color:#f4ead5!important;
  background:linear-gradient(180deg,rgba(143,166,106,.16),rgba(45,117,100,.09))!important;
  border-color:rgba(143,166,106,.34)!important;
  box-shadow:none!important;
}
.dropdown-menu,#login-form.dropdown-menu{
  border-radius:12px!important;
  padding:8px!important;
  background:linear-gradient(180deg,rgba(17,17,14,.98),rgba(7,7,6,.98))!important;
  border:1px solid var(--ui-border)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.62)!important;
}
.dropdown-menu>li>a,.dropdown-menu a,.dropdown-item{
  border-radius:9px!important;
  padding:10px 12px!important;
  color:var(--ui-bone)!important;
}
.dropdown-menu>li>a:hover,.dropdown-menu a:hover,.dropdown-item:hover{
  background:rgba(143,166,106,.14)!important;
  color:#fff4dd!important;
}

/* Card, pulsanti e modali uniformati */
.panel,.card,.well,.list-group-item,.necro-widget,.modal-content,.ae-modal-window{
  border-radius:var(--ui-radius-sm)!important;
  background:linear-gradient(180deg,var(--ui-surface-2),var(--ui-surface))!important;
  border:1px solid var(--ui-border)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.48)!important;
}
.panel-heading,.card-header,.modal-header,.ae-modal-titlebar,legend{
  border-radius:var(--ui-radius-sm) var(--ui-radius-sm) 0 0!important;
  background:linear-gradient(90deg,rgba(45,117,100,.22),rgba(111,89,127,.16),rgba(126,23,39,.14))!important;
  border-bottom:1px solid var(--ui-border)!important;
  color:var(--ui-bone)!important;
}
.panel-body,.card-body,.modal-body{color:var(--ui-bone)!important;}
.btn,button,input[type=submit],input[type=button],.news-fliplink-btn,#news-search-btn{
  border-radius:999px!important;
  border:1px solid rgba(143,166,106,.38)!important;
  background:linear-gradient(180deg,rgba(143,166,106,.22),rgba(45,117,100,.18))!important;
  color:var(--ui-bone)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.30)!important;
  text-shadow:none!important;
  transition:filter .16s ease,border-color .16s ease,background-color .16s ease!important;
}
.btn:hover,button:hover,input[type=submit]:hover,input[type=button]:hover,.news-fliplink-btn:hover,#news-search-btn:hover{
  border-color:rgba(232,222,200,.56)!important;
  filter:brightness(1.10)!important;
  transform:none!important;
}
.btn-danger{background:linear-gradient(180deg,rgba(126,23,39,.42),rgba(85,15,29,.30))!important;border-color:rgba(126,23,39,.62)!important;}
.btn-primary{background:linear-gradient(180deg,rgba(45,117,100,.36),rgba(36,89,78,.28))!important;border-color:rgba(45,117,100,.62)!important;}
.btn-warning{background:linear-gradient(180deg,rgba(169,150,98,.34),rgba(112,96,61,.28))!important;border-color:rgba(169,150,98,.62)!important;}

/* Area amministrazione/sysop: tabelle e form più professionali */
body[data-necro-page*='Sysop'] .veleno-main-chamber,
body[data-necro-page*='sys'] .veleno-main-chamber{
  background:linear-gradient(180deg,rgba(11,12,11,.96),rgba(6,7,6,.98))!important;
}
.table,.table-responsive,table{
  border-color:var(--ui-border)!important;
  background:rgba(8,8,7,.78)!important;
}
.table>thead>tr>th,table thead th{
  position:sticky;
  top:72px;
  z-index:3;
  background:linear-gradient(180deg,#181812,#10100d)!important;
  color:#f0e6cf!important;
  border-bottom:1px solid var(--ui-border-strong)!important;
}
.table>tbody>tr>td,table td,.table>tbody>tr>th{
  border-top-color:rgba(142,126,84,.22)!important;
}
.table>tbody>tr:hover>td,table tbody tr:hover td{
  background:rgba(45,117,100,.11)!important;
}
.form-control,input,select,textarea{
  border-radius:10px!important;
  min-height:40px;
}
label{color:var(--ui-muted)!important;}

/* Correzioni pagina per pagina e contenuti legacy */
img,canvas,video,iframe{max-width:100%;}
img{height:auto;}
pre,.ansi,code{max-width:100%;overflow:auto;}
#pscroller1,#pscroller2{max-width:100%!important;width:100%!important;}
.titoli{color:var(--ui-bone)!important;}
.testo{color:#b8a4c8!important;}
footer{
  border-top:1px solid var(--ui-border)!important;
  color:var(--ui-muted)!important;
  padding:18px 0 28px!important;
}

/* Mobile: meno larghezze fisse, menu più touch-friendly */
@media (max-width:991.98px){
  .navbar,.navbar-necro-apocalypse,.navbar-default{border-radius:0 0 12px 12px!important;}
  .navbar-header{min-height:64px!important;}
  .navbar-toggle{border-radius:12px!important;background:rgba(143,166,106,.14)!important;border-color:rgba(143,166,106,.38)!important;box-shadow:none!important;}
  #navbar.navbar-collapse,#navbar.navbar-collapse.collapse{top:64px!important;border-radius:0 0 14px 14px!important;background:rgba(8,8,7,.98)!important;}
  #navbar:before{content:'MENU';color:var(--ui-muted)!important;text-shadow:none!important;border-bottom-color:var(--ui-border)!important;font-size:14px!important;letter-spacing:.18em!important;}
  .navbar-nav>li>a,.navbar .dropdown>a{min-height:48px!important;background:rgba(255,255,255,.035)!important;border-color:rgba(142,126,84,.25)!important;box-shadow:none!important;}
  .dropdown-menu,#login-form.dropdown-menu{background:rgba(13,13,11,.98)!important;}
}
@media (max-width:767px){
  body{font-size:15px!important;}
  .container,.container-fluid{padding-left:12px!important;padding-right:12px!important;}
  .veleno-main-chamber{padding:12px!important;border-radius:12px!important;}
  .necro-tiles,.necro-apocalypse-tiles{grid-template-columns:1fr!important;gap:10px!important;}
  .necro-tiles .necro-tile,.necro-apocalypse-tiles .tile{min-height:86px!important;}
  h1{font-size:clamp(28px,9vw,42px)!important;}
  h2{font-size:clamp(23px,7vw,32px)!important;}
  h3{font-size:clamp(19px,6vw,26px)!important;}
  .panel,.card,.well,.necro-widget,.modal-content{border-radius:12px!important;}
  .btn,button,input[type=submit],input[type=button]{min-height:42px;padding:9px 14px!important;}
  .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .modal-dialog{margin:10px!important;}
}

/* Performance/accessibilità: riduci motion su richiesta e alleggerisci FX */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important;}
}
.necro-jump,.veleno-v8-drip{display:none!important;}
.necro-fog{opacity:.24!important;}
.necro-fog-2{opacity:.15!important;}
.necro-bats{opacity:.26!important;}

/* ========================================================================== 
   RESTORE HOMEPAGE IMAGE BUTTONS - requested correction
   Ripristina le immagini sulle card/bottoni homepage mantenendo il tema bilanciato.
   ========================================================================== */
.necro-tiles .necro-tile,
.necro-apocalypse-tiles .tile{
  position:relative!important;
  overflow:hidden!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  min-height:190px!important;
  isolation:isolate!important;
}
.necro-tiles .necro-tile.forum{
  background-image:linear-gradient(180deg,rgba(0,0,0,.14) 0%,rgba(0,0,0,.36) 48%,rgba(0,0,0,.90) 100%),url('../horror-assets/crypt-card.jpg')!important;
}
.necro-tiles .necro-tile.doors{
  background-image:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.38) 52%,rgba(0,0,0,.90) 100%),url('../horror-assets/hallway-card.jpg')!important;
}
.necro-tiles .necro-tile.files{
  background-image:linear-gradient(180deg,rgba(0,0,0,.14) 0%,rgba(0,0,0,.40) 50%,rgba(0,0,0,.91) 100%),url('../horror-assets/zombie-card.jpg')!important;
}
.necro-apocalypse-tiles .tile:nth-child(1){
  background-image:linear-gradient(180deg,rgba(0,0,0,.13) 0%,rgba(0,0,0,.40) 54%,rgba(0,0,0,.92) 100%),url('../images/necro-apocalypse/grave-card.jpg')!important;
}
.necro-apocalypse-tiles .tile:nth-child(2){
  background-image:linear-gradient(180deg,rgba(0,0,0,.13) 0%,rgba(0,0,0,.40) 54%,rgba(0,0,0,.92) 100%),url('../images/necro-apocalypse/zombie-left.jpg')!important;
}
.necro-apocalypse-tiles .tile:nth-child(3){
  background-image:linear-gradient(180deg,rgba(0,0,0,.13) 0%,rgba(0,0,0,.40) 54%,rgba(0,0,0,.92) 100%),url('../images/necro-apocalypse/terminal-frame.jpg')!important;
}
.necro-tiles .necro-tile:after,
.necro-apocalypse-tiles .tile:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:radial-gradient(circle at 50% 18%,rgba(255,255,255,.08),transparent 28%),radial-gradient(circle at center,transparent 24%,rgba(0,0,0,.52) 100%)!important;
  opacity:.72!important;
}
.necro-tiles .necro-tile b,
.necro-tiles .necro-tile small,
.necro-apocalypse-tiles .tile span{
  z-index:2!important;
}
.necro-apocalypse-tiles .tile span{
  display:block!important;
  position:absolute!important;
  left:18px!important;
  bottom:14px!important;
  color:#e8dec8!important;
  font-family:Impact,"Courier New",monospace!important;
  font-size:28px!important;
  letter-spacing:.10em!important;
  text-shadow:0 2px 2px #000,0 0 12px rgba(126,23,39,.58)!important;
  text-transform:uppercase!important;
}
.necro-tiles .necro-tile:hover,
.necro-apocalypse-tiles .tile:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.62),0 0 18px rgba(126,23,39,.20),inset 0 0 28px rgba(0,0,0,.45)!important;
}
@media (max-width:767px){
  .necro-tiles .necro-tile,
  .necro-apocalypse-tiles .tile{
    min-height:145px!important;
  }
  .necro-apocalypse-tiles .tile span{font-size:22px!important;}
}


/* =========================================================
   MENU SUPERIORE CON IMMAGINI HORROR - THOMAS PATCH
   Piccole immagini/icone tematiche nei pulsanti del menu.
   Mantiene il tema bilanciato senza appesantire la navbar.
   ========================================================= */
.navbar-necro-apocalypse .navbar-nav>li>a,
.navbar-default .navbar-nav>li>a,
.navbar-necro-apocalypse .dropdown-menu>li>a,
.navbar-necro-apocalypse .dropdown-item{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
.navbar-necro-apocalypse .menu-label{
  position:relative;
  z-index:2;
  white-space:nowrap;
}
.menu-horror-icon{
  flex:0 0 auto;
  width:30px;
  height:30px;
  display:inline-block;
  border-radius:9px;
  background-size:cover;
  background-position:center;
  opacity:.88;
  filter:sepia(.16) saturate(.82) contrast(1.08) brightness(.86);
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.13),0 3px 10px rgba(0,0,0,.45);
  transition:opacity .16s ease,filter .16s ease,transform .16s ease;
}
.navbar-necro-apocalypse a:hover .menu-horror-icon,
.navbar-necro-apocalypse .open>a .menu-horror-icon{
  opacity:1;
  filter:sepia(.10) saturate(1) contrast(1.12) brightness(.98);
  transform:translateY(-1px);
}
.menu-horror-icon-forum{background-image:url('../horror-assets/menu-icons/forum.svg');}
.menu-horror-icon-files{background-image:url('../horror-assets/menu-icons/files.svg');}
.menu-horror-icon-doors{background-image:url('../horror-assets/menu-icons/doors.svg');}
.menu-horror-icon-mail{background-image:url('../horror-assets/menu-icons/mail.svg');}
.menu-horror-icon-settings{background-image:url('../horror-assets/menu-icons/settings.svg');}
.menu-horror-icon-stats{background-image:url('../horror-assets/menu-icons/stats.svg');}
.menu-horror-icon-login{background-image:url('../horror-assets/menu-icons/login.svg');}
.menu-horror-icon-register{background-image:url('../horror-assets/menu-icons/register.svg');}
.menu-horror-icon-user{background-image:url('../horror-assets/menu-icons/user.svg');}
.menu-horror-icon-logout{background-image:url('../horror-assets/menu-icons/logout.svg');}
.menu-horror-icon-default{background-image:url('../horror-assets/menu-icons/default.svg');}
.menu-horror-icon-news{background-image:url('../horror-assets/menu-icons/news.svg');}
.menu-horror-icon-archive{background-image:url('../horror-assets/menu-icons/archive.svg');}
.menu-horror-icon-community{background-image:url('../horror-assets/menu-icons/community.svg');}
.menu-horror-icon-support{background-image:url('../horror-assets/menu-icons/support.svg');}
.menu-horror-icon-quote{background-image:url('../horror-assets/menu-icons/quote.svg');}
.menu-horror-icon-jokes{background-image:url('../horror-assets/menu-icons/jokes.svg');}
.menu-horror-icon-point{background-image:url('../horror-assets/menu-icons/point.svg');}
.menu-horror-icon-chat{background-image:url('../horror-assets/menu-icons/chat.svg');}
.menu-horror-icon-nodelist{background-image:url('../horror-assets/menu-icons/nodelist.svg');}
.menu-horror-icon-random{background-image:url('../horror-assets/menu-icons/random.svg');}
.menu-horror-icon-calendar{background-image:url('../horror-assets/menu-icons/calendar.svg');}
.menu-horror-icon-photos{background-image:url('../horror-assets/menu-icons/photos.svg');}

.navbar-necro-apocalypse .caret{
  margin-left:auto!important;
}
@media (max-width:767px){
  .menu-horror-icon{width:28px;height:28px;border-radius:8px;}
  .navbar-necro-apocalypse .navbar-nav>li>a,
  .navbar-default .navbar-nav>li>a{
    justify-content:flex-start!important;
    min-height:48px!important;
  }
}

/* =========================================================
   MENU SUPERIORE: IMMAGINI COME SFONDO DEI PULSANTI
   Richiesta: sfondo horror/macabro sui pulsanti Forum, Files, Doors, ecc.
   Mantiene il tema bilanciato e rimuove l'effetto "solo icona".
   ========================================================= */
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
.navbar-default .navbar-nav > li > a.menu-bg-btn{
  position:relative!important;
  isolation:isolate;
  min-height:54px!important;
  padding:10px 15px!important;
  margin:7px 4px!important;
  border-radius:13px!important;
  overflow:hidden!important;
  color:#f1e6cf!important;
  text-shadow:0 2px 5px rgba(0,0,0,.9),0 0 12px rgba(90,12,24,.38)!important;
  border:1px solid rgba(206,190,151,.16)!important;
  background-color:#0a0b0c!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.35),0 5px 14px rgba(0,0,0,.34)!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease!important;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn::before,
.navbar-default .navbar-nav > li > a.menu-bg-btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:inherit;
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
  filter:saturate(.72) contrast(1.08) brightness(.68) sepia(.12);
  transition:transform .18s ease,filter .18s ease;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn::after,
.navbar-default .navbar-nav > li > a.menu-bg-btn::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(3,4,5,.84),rgba(3,4,5,.58) 48%,rgba(3,4,5,.78)),
    radial-gradient(circle at 18% 22%,rgba(111,21,36,.28),transparent 42%),
    radial-gradient(circle at 88% 68%,rgba(45,74,58,.22),transparent 44%);
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover,
.navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn,
.navbar-default .navbar-nav > li > a.menu-bg-btn:hover,
.navbar-default .navbar-nav > li.open > a.menu-bg-btn{
  transform:translateY(-1px)!important;
  border-color:rgba(219,198,150,.33)!important;
  box-shadow:inset 0 0 0 1px rgba(119,22,38,.22),0 8px 20px rgba(0,0,0,.46),0 0 18px rgba(91,17,32,.18)!important;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover::before,
.navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn::before,
.navbar-default .navbar-nav > li > a.menu-bg-btn:hover::before,
.navbar-default .navbar-nav > li.open > a.menu-bg-btn::before{
  transform:scale(1.07);
  filter:saturate(.86) contrast(1.14) brightness(.78) sepia(.10);
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn .menu-horror-icon,
.navbar-default .navbar-nav > li > a.menu-bg-btn .menu-horror-icon{
  display:none!important;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn .menu-label,
.navbar-default .navbar-nav > li > a.menu-bg-btn .menu-label{
  letter-spacing:.08em;
  font-weight:700;
  text-transform:uppercase;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-forum,
.navbar-default .navbar-nav > li > a.menu-bg-forum{background-image:url('../horror-assets/crypt-card.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-files,
.navbar-default .navbar-nav > li > a.menu-bg-files{background-image:url('../horror-assets/necro-banner-alt.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-doors,
.navbar-default .navbar-nav > li > a.menu-bg-doors{background-image:url('../horror-assets/hallway-card.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-mail,
.navbar-default .navbar-nav > li > a.menu-bg-mail{background-image:url('../horror-assets/zombie-card.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-settings,
.navbar-default .navbar-nav > li > a.menu-bg-settings,
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-stats,
.navbar-default .navbar-nav > li > a.menu-bg-stats{background-image:url('../horror-assets/side-skull.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-register,
.navbar-default .navbar-nav > li > a.menu-bg-register,
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-login,
.navbar-default .navbar-nav > li > a.menu-bg-login,
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-user,
.navbar-default .navbar-nav > li > a.menu-bg-user{background-image:url('../horror-assets/necro-banner.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-default,
.navbar-default .navbar-nav > li > a.menu-bg-default{background-image:url('../horror-assets/necro-bg.jpg')!important;}

@media (max-width:991px){
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
  .navbar-default .navbar-nav > li > a.menu-bg-btn{
    min-height:50px!important;
    margin:5px 2px!important;
    padding:9px 12px!important;
    border-radius:11px!important;
  }
}
@media (max-width:767px){
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
  .navbar-default .navbar-nav > li > a.menu-bg-btn{
    min-height:48px!important;
    width:calc(100% - 14px)!important;
    margin:6px 7px!important;
    justify-content:center!important;
    background-position:center!important;
  }
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn .menu-label,
  .navbar-default .navbar-nav > li > a.menu-bg-btn .menu-label{
    font-size:13px!important;
  }
}


/* =========================================================
   MENU SUPERIORE: SFONDI DIVERSI E PIU' RAPPRESENTATIVI
   Ogni voce principale usa un'immagine SVG macabra dedicata.
   ========================================================= */
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
.navbar-default .navbar-nav > li > a.menu-bg-btn{
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-forum,
.navbar-default .navbar-nav > li > a.menu-bg-forum{background-image:url('../horror-assets/menu-bg/forum.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-files,
.navbar-default .navbar-nav > li > a.menu-bg-files{background-image:url('../horror-assets/menu-bg/files.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-doors,
.navbar-default .navbar-nav > li > a.menu-bg-doors{background-image:url('../horror-assets/menu-bg/doors.svg')!important;background-position:center 44%!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-mail,
.navbar-default .navbar-nav > li > a.menu-bg-mail{background-image:url('../horror-assets/menu-bg/mail.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-news,
.navbar-default .navbar-nav > li > a.menu-bg-news{background-image:url('../horror-assets/menu-bg/news.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-archive,
.navbar-default .navbar-nav > li > a.menu-bg-archive{background-image:url('../horror-assets/menu-bg/archive.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-community,
.navbar-default .navbar-nav > li > a.menu-bg-community{background-image:url('../horror-assets/menu-bg/community.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-settings,
.navbar-default .navbar-nav > li > a.menu-bg-settings{background-image:url('../horror-assets/menu-bg/settings.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-stats,
.navbar-default .navbar-nav > li > a.menu-bg-stats{background-image:url('../horror-assets/menu-bg/stats.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-register,
.navbar-default .navbar-nav > li > a.menu-bg-register{background-image:url('../horror-assets/menu-bg/register.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-login,
.navbar-default .navbar-nav > li > a.menu-bg-login{background-image:url('../horror-assets/menu-bg/login.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-user,
.navbar-default .navbar-nav > li > a.menu-bg-user{background-image:url('../horror-assets/menu-bg/user.svg')!important;}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-default,
.navbar-default .navbar-nav > li > a.menu-bg-default{background-image:url('../horror-assets/menu-bg/default.svg')!important;}

/* Più immagine visibile, senza perdere leggibilità */
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn::after,
.navbar-default .navbar-nav > li > a.menu-bg-btn::after{
  background:
    linear-gradient(90deg,rgba(3,4,5,.74),rgba(3,4,5,.46) 48%,rgba(3,4,5,.70)),
    radial-gradient(circle at 18% 22%,rgba(111,21,36,.18),transparent 42%),
    radial-gradient(circle at 88% 68%,rgba(45,74,58,.16),transparent 44%)!important;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn .menu-label,
.navbar-default .navbar-nav > li > a.menu-bg-btn .menu-label{
  background:rgba(0,0,0,.22);
  border-radius:8px;
  padding:2px 6px;
}
@media (max-width:767px){
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
  .navbar-default .navbar-nav > li > a.menu-bg-btn{
    min-height:58px!important;
    background-position:center!important;
  }
}


/* =========================================================
   MENU MORE ICON COMPLETION
   Icone dedicate per tutte le voci del menu More.
   Mantiene coerenza horror/macabro anche nei sottomenu.
   ========================================================= */
.navbar-necro-apocalypse .dropdown-menu .menu-horror-icon{
  background-color:rgba(232,220,196,.07);
  background-repeat:no-repeat;
  background-size:72% 72%;
  background-position:center;
}
.navbar-necro-apocalypse .dropdown-menu>li>a:hover .menu-horror-icon,
.navbar-necro-apocalypse .dropdown-menu .open>a .menu-horror-icon{
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.22),0 0 12px rgba(101,255,110,.28);
}



/* ==========================================================
   FIX: More > Photos nested dropdown too wide
   Keeps nested dropdowns compact and aligned to their trigger.
   ========================================================== */
.more-menu .has-submenu,
.more-dropdown .has-submenu,
.more-panel .has-submenu,
.more-item.has-submenu,
.menu-more .has-submenu {
  position: relative !important;
}

.more-menu .submenu,
.more-dropdown .submenu,
.more-panel .submenu,
.menu-more .submenu,
.more-menu .dropdown-menu,
.more-dropdown .dropdown-menu,
.more-panel .dropdown-menu,
.menu-more .dropdown-menu,
.photos-submenu,
.photo-submenu {
  width: fit-content !important;
  min-width: 170px !important;
  max-width: 220px !important;
  left: auto !important;
  right: 0 !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

.more-menu .submenu a,
.more-dropdown .submenu a,
.more-panel .submenu a,
.menu-more .submenu a,
.photos-submenu a,
.photo-submenu a {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}

@media (max-width: 768px) {
  .more-menu .submenu,
  .more-dropdown .submenu,
  .more-panel .submenu,
  .menu-more .submenu,
  .more-menu .dropdown-menu,
  .more-dropdown .dropdown-menu,
  .more-panel .dropdown-menu,
  .menu-more .dropdown-menu,
  .photos-submenu,
  .photo-submenu {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    right: auto !important;
    margin-top: 8px !important;
  }
}



/* ==========================================================
   DESKTOP FIX: Photos submenu inside More panel
   This patch targets the real desktop behaviour where the
   Photos submenu inherits the full More panel width.
   ========================================================== */
@media (min-width: 769px) {
  /* The Photos trigger must be the positioning parent */
  .more-panel li:has(a[href*="photo" i]),
  .more-panel li:has(a[href*="Photos" i]),
  .more-dropdown li:has(a[href*="photo" i]),
  .more-dropdown li:has(a[href*="Photos" i]),
  .more-menu li:has(a[href*="photo" i]),
  .more-menu li:has(a[href*="Photos" i]),
  li:has(> a[href*="photo" i]),
  li:has(> a[href*="Photos" i]) {
    position: relative !important;
  }

  /* Force only the nested menu opened by Photos to compact width */
  .more-panel li:has(a[href*="photo" i]) > ul,
  .more-panel li:has(a[href*="Photos" i]) > ul,
  .more-dropdown li:has(a[href*="photo" i]) > ul,
  .more-dropdown li:has(a[href*="Photos" i]) > ul,
  .more-menu li:has(a[href*="photo" i]) > ul,
  .more-menu li:has(a[href*="Photos" i]) > ul,
  li:has(> a[href*="photo" i]) > ul,
  li:has(> a[href*="Photos" i]) > ul,
  .photos-submenu,
  .photo-submenu {
    position: absolute !important;
    top: 0 !important;
    left: auto !important;
    right: 100% !important;
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
    inline-size: 190px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    padding: 8px !important;
  }

  .more-panel li:has(a[href*="photo" i]) > ul a,
  .more-panel li:has(a[href*="Photos" i]) > ul a,
  .more-dropdown li:has(a[href*="photo" i]) > ul a,
  .more-dropdown li:has(a[href*="Photos" i]) > ul a,
  .more-menu li:has(a[href*="photo" i]) > ul a,
  .more-menu li:has(a[href*="Photos" i]) > ul a,
  li:has(> a[href*="photo" i]) > ul a,
  li:has(> a[href*="Photos" i]) > ul a,
  .photos-submenu a,
  .photo-submenu a {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}



/* ==========================================================
   REAL FIX: Photos submenu width on desktop
   Adds deterministic classes from components/navbar.xjs:
   .menu-node-photos and .dropdown-menu-photos.
   This avoids unreliable generic selectors and fixes the PC menu.
   ========================================================== */
@media (min-width: 769px) {
  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos,
  .navbar-default li.dropdown-submenu.menu-node-photos {
    position: relative !important;
  }

  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu,
  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu-photos,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu-photos {
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
    inline-size: 190px !important;
    padding: 8px !important;
    margin-top: 0 !important;
    margin-left: 8px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu > li,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu > li {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }

  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu > li > a,
  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu a,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu > li > a,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu a {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 38px !important;
    margin: 2px 0 !important;
    padding: 9px 10px !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .navbar-necro-apocalypse li.dropdown-submenu.menu-node-photos > ul.dropdown-menu .menu-label,
  .navbar-default li.dropdown-submenu.menu-node-photos > ul.dropdown-menu .menu-label {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}

/* Desktop fallback for old generated pages that do not yet expose menu-node-* */
@media (min-width: 769px) {
  .navbar-necro-apocalypse .dropdown-submenu > a.menu-bg-photos + ul.dropdown-menu,
  .navbar-default .dropdown-submenu > a.menu-bg-photos + ul.dropdown-menu {
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
    inline-size: 190px !important;
    margin-left: 8px !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > a.menu-bg-photos + ul.dropdown-menu a,
  .navbar-default .dropdown-submenu > a.menu-bg-photos + ul.dropdown-menu a {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}



/* ==========================================================
   DEFINITIVE FIX: compact nested dropdowns in desktop More menu
   The previous patches only targeted Photos. This final rule
   targets Bootstrap nested dropdowns generated by navbar.xjs.
   ========================================================== */
@media (min-width: 769px) {
  .navbar-necro-apocalypse .dropdown-submenu,
  .navbar-default .dropdown-submenu,
  .navbar-necro-apocalypse .veleno-nested-submenu,
  .navbar-default .veleno-nested-submenu {
    position: relative !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu,
  .navbar-default .dropdown-submenu > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu,
  .navbar-default .veleno-nested-submenu > .dropdown-menu {
    display: none;
    position: absolute !important;
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    width: 192px !important;
    min-width: 192px !important;
    max-width: 192px !important;
    inline-size: 192px !important;
    margin: 0 0 0 8px !important;
    padding: 7px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu:hover > .dropdown-menu,
  .navbar-default .dropdown-submenu:hover > .dropdown-menu,
  .navbar-necro-apocalypse .dropdown-submenu.open > .dropdown-menu,
  .navbar-default .dropdown-submenu.open > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu:hover > .dropdown-menu,
  .navbar-default .veleno-nested-submenu:hover > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu.open > .dropdown-menu,
  .navbar-default .veleno-nested-submenu.open > .dropdown-menu {
    display: block !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu > li,
  .navbar-default .dropdown-submenu > .dropdown-menu > li,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu > li,
  .navbar-default .veleno-nested-submenu > .dropdown-menu > li {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu a,
  .navbar-default .dropdown-submenu > .dropdown-menu a,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu a,
  .navbar-default .veleno-nested-submenu > .dropdown-menu a {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 38px !important;
    margin: 2px 0 !important;
    padding: 8px 9px !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu .menu-label,
  .navbar-default .dropdown-submenu > .dropdown-menu .menu-label,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu .menu-label,
  .navbar-default .veleno-nested-submenu > .dropdown-menu .menu-label {
    min-width: 0 !important;
    max-width: 120px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}

/* Mobile: keep nested dropdowns inside the main panel */
@media (max-width: 768px) {
  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu,
  .navbar-default .dropdown-submenu > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu,
  .navbar-default .veleno-nested-submenu > .dropdown-menu {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 6px 0 0 0 !important;
    box-sizing: border-box !important;
  }
}



/* ==========================================================
   REAL VISUAL FIX: More/Photos desktop submenu overflow
   The large black area was caused by the parent dropdown
   clipping/scrolling the lateral Photos submenu.
   ========================================================== */
@media (min-width: 769px) {
  .navbar-necro-apocalypse .navbar-nav > li.dropdown > .dropdown-menu,
  .navbar-default .navbar-nav > li.dropdown > .dropdown-menu {
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    max-height: none !important;
  }

  .navbar-necro-apocalypse .navbar-nav > li.dropdown > .dropdown-menu::-webkit-scrollbar,
  .navbar-default .navbar-nav > li.dropdown > .dropdown-menu::-webkit-scrollbar {
    display: none !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu,
  .navbar-default .dropdown-submenu,
  .navbar-necro-apocalypse .veleno-nested-submenu,
  .navbar-default .veleno-nested-submenu {
    position: relative !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu,
  .navbar-default .dropdown-submenu > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu,
  .navbar-default .veleno-nested-submenu > .dropdown-menu {
    position: absolute !important;
    top: 0 !important;
    left: 100% !important;
    right: auto !important;
    width: 186px !important;
    min-width: 186px !important;
    max-width: 186px !important;
    inline-size: 186px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 0 0 7px !important;
    padding: 7px !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    box-sizing: border-box !important;
  }

  .navbar-necro-apocalypse .dropdown-submenu > .dropdown-menu a,
  .navbar-default .dropdown-submenu > .dropdown-menu a,
  .navbar-necro-apocalypse .veleno-nested-submenu > .dropdown-menu a,
  .navbar-default .veleno-nested-submenu > .dropdown-menu a {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Keeps mobile behaviour safe and internal to the opened panel */
@media (max-width: 768px) {
  .navbar-necro-apocalypse .navbar-nav > li.dropdown > .dropdown-menu,
  .navbar-default .navbar-nav > li.dropdown > .dropdown-menu {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: 70vh !important;
  }
}



/* ==========================================================
   VELENO PREMIUM POLISH
   Homepage cinematografica, componenti uniformi, dashboard,
   mobile bottom navigation, immagini dedicate e performance.
   ========================================================== */

:root{
  --vp-black:#050606;
  --vp-surface:#0b0c0b;
  --vp-surface-2:#11130f;
  --vp-bone:#e7dcc4;
  --vp-muted:#a79c82;
  --vp-green:#6f8d5b;
  --vp-teal:#2f7166;
  --vp-purple:#5b4268;
  --vp-blood:#7e1727;
  --vp-gold:#8a7448;
  --vp-border:rgba(155,132,82,.34);
  --vp-radius:16px;
}

body{
  background:
    radial-gradient(circle at 15% 10%, rgba(92,66,104,.16), transparent 34%),
    radial-gradient(circle at 85% 18%, rgba(47,113,102,.15), transparent 32%),
    radial-gradient(circle at 50% 88%, rgba(126,23,39,.12), transparent 38%),
    #050606 !important;
}

/* Hero cinematografica se presente in homepage o inserita dal JS */
.veleno-cinematic-hero{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  min-height:310px;
  margin:18px 0 26px;
  padding:clamp(28px,5vw,58px);
  display:flex;
  align-items:flex-end;
  background:
    linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.48),rgba(0,0,0,.82)),
    url("../horror-assets/premium-sections/archive.jpg") center/cover no-repeat;
  border:1px solid var(--vp-border);
  box-shadow:0 24px 55px rgba(0,0,0,.62), inset 0 0 80px rgba(0,0,0,.55);
}
.veleno-cinematic-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 20%,rgba(111,141,91,.18),transparent 36%),
    radial-gradient(circle at 80% 70%,rgba(91,66,104,.16),transparent 36%);
  pointer-events:none;
}
.veleno-cinematic-hero>*{position:relative;z-index:1}
.veleno-cinematic-hero h1,
.veleno-cinematic-hero .hero-title{
  margin:0 0 8px!important;
  font-size:clamp(42px,8vw,82px)!important;
  letter-spacing:.08em!important;
  color:#f2e6cc!important;
  text-shadow:2px 2px 0 #000,0 0 22px rgba(111,141,91,.30)!important;
}
.veleno-cinematic-hero p,
.veleno-cinematic-hero .hero-subtitle{
  max-width:780px;
  color:#d7cbb5!important;
  font-size:clamp(15px,2vw,20px);
  letter-spacing:.09em;
}
.veleno-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}
.veleno-hero-actions a,
.veleno-hero-actions button{
  border-radius:999px!important;
  padding:11px 20px!important;
  border:1px solid rgba(231,220,196,.28)!important;
  background:linear-gradient(180deg,rgba(111,141,91,.22),rgba(47,113,102,.13))!important;
  color:#f3ead8!important;
  text-decoration:none!important;
}
.veleno-hero-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(110px,1fr));
  gap:10px;
  margin-top:24px;
  max-width:720px;
}
.veleno-hero-stat{
  border:1px solid rgba(155,132,82,.30);
  background:rgba(0,0,0,.36);
  border-radius:14px;
  padding:10px 12px;
}
.veleno-hero-stat strong{display:block;color:#f0e4c8;font-size:18px}
.veleno-hero-stat span{display:block;color:#9fb18b;font-size:11px;letter-spacing:.14em}

/* Card homepage: più leggibili e cinematiche */
.necro-tiles .necro-tile,
.necro-apocalypse-tiles .tile,
.card.menu-card,
.home-card,
[class*="tile"]{
  border-radius:18px!important;
  border-color:var(--vp-border)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.55), inset 0 0 0 1px rgba(255,255,255,.03)!important;
}
.necro-tiles .necro-tile:hover,
.necro-apocalypse-tiles .tile:hover,
.home-card:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 50px rgba(0,0,0,.65),0 0 18px rgba(111,141,91,.14)!important;
}

/* Sfondi dedicati per voci/section */
.menu-bg-forum,.section-forum,.tile-forum{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/forum.jpg")!important}
.menu-bg-files,.section-files,.tile-files{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/files.jpg")!important}
.menu-bg-doors,.section-doors,.tile-doors{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/doors.jpg")!important}
.menu-bg-mail,.section-mail,.tile-mail{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/mail.jpg")!important}
.menu-bg-news,.section-news,.tile-news{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/news.jpg")!important}
.menu-bg-archive,.section-archive,.tile-archive{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/archive.jpg")!important}
.menu-bg-community,.section-community,.tile-community{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/community.jpg")!important}
.menu-bg-photos,.section-photos,.tile-photos{background-image:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.48)),url("../horror-assets/premium-sections/photos.jpg")!important}

/* Dashboard utente / admin */
.veleno-dashboard-grid,
.admin-dashboard,
.dashboard-cards{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:14px!important;
}
.veleno-stat-card,
.dashboard-card,
.admin-stat,
.stats-card{
  border-radius:16px!important;
  border:1px solid var(--vp-border)!important;
  background:
    linear-gradient(180deg,rgba(17,19,15,.94),rgba(5,6,6,.96)),
    radial-gradient(circle at 18% 12%,rgba(111,141,91,.13),transparent 34%)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.50)!important;
  padding:16px!important;
}
.veleno-stat-card .num,
.dashboard-card .num,
.admin-stat .num{
  color:#f3e8cc!important;
  font-size:clamp(24px,4vw,38px)!important;
}
.table,
.table-responsive{
  border-radius:14px!important;
  overflow:hidden!important;
}
.table>thead>tr>th{
  background:linear-gradient(90deg,rgba(47,113,102,.22),rgba(91,66,104,.18))!important;
  color:#eee2c9!important;
  border-color:var(--vp-border)!important;
}

/* Notifiche moderne */
.veleno-toast,
.alert,
.notification,
.notify{
  border-radius:14px!important;
  border:1px solid var(--vp-border)!important;
  background:linear-gradient(180deg,rgba(17,19,15,.96),rgba(5,6,6,.96))!important;
  color:#e7dcc4!important;
  box-shadow:0 14px 32px rgba(0,0,0,.48)!important;
}

/* Mobile bottom navigation */
.veleno-mobile-bottom-nav{
  display:none;
}
@media (max-width:768px){
  body{padding-bottom:76px!important}
  .veleno-mobile-bottom-nav{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    position:fixed;
    left:10px;
    right:10px;
    bottom:10px;
    z-index:20000;
    border:1px solid var(--vp-border);
    border-radius:18px;
    overflow:hidden;
    background:rgba(8,9,8,.94);
    backdrop-filter:blur(10px);
    box-shadow:0 18px 36px rgba(0,0,0,.72);
  }
  .veleno-mobile-bottom-nav a{
    min-height:56px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    color:#e7dcc4!important;
    text-decoration:none!important;
    font-size:11px;
    letter-spacing:.08em;
    border-right:1px solid rgba(155,132,82,.18);
  }
  .veleno-mobile-bottom-nav a:last-child{border-right:0}
  .veleno-mobile-bottom-nav b{font-size:18px;line-height:1}
  .veleno-cinematic-hero{
    min-height:260px;
    border-radius:18px;
    padding:24px 18px;
  }
  .veleno-hero-stats{grid-template-columns:repeat(2,1fr)}
}

/* Performance/accessibilità */
img{max-width:100%;height:auto}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
}



/* ==========================================================
   TEMA HORROR PREMIUM DEFINITIVO
   Look più maturo: cathedral archive, occult terminal,
   dark luxury horror. Rosso solo come accento.
   ========================================================== */
:root{
  --dh-bg:#040505;
  --dh-panel:#0b0d0b;
  --dh-panel-2:#12140f;
  --dh-bone:#eadfc6;
  --dh-muted:#a89d83;
  --dh-verdigris:#6f8d5b;
  --dh-mold:#3f5b3b;
  --dh-teal:#2f7166;
  --dh-violet:#5b4268;
  --dh-blood:#7e1727;
  --dh-rust:#7a5330;
  --dh-gold:#9a824d;
  --dh-border:rgba(166,139,82,.36);
  --dh-border-soft:rgba(166,139,82,.18);
  --dh-shadow:0 20px 48px rgba(0,0,0,.62);
  --dh-radius:18px;
}

body{
  color:var(--dh-bone)!important;
  background:
    linear-gradient(rgba(0,0,0,.50),rgba(0,0,0,.74)),
    radial-gradient(circle at 12% 8%, rgba(91,66,104,.19), transparent 32%),
    radial-gradient(circle at 82% 15%, rgba(47,113,102,.17), transparent 30%),
    radial-gradient(circle at 50% 95%, rgba(126,23,39,.10), transparent 36%),
    url("../horror-assets/premium-definitive/cathedral-archive.jpg") center top/cover fixed no-repeat,
    #040505!important;
}

.navbar,
.navbar-necro-apocalypse,
.navbar-default{
  background:
    linear-gradient(180deg,rgba(10,12,10,.95),rgba(4,5,5,.92)),
    url("../horror-assets/premium-definitive/forbidden-library.jpg") center/cover!important;
  border:1px solid var(--dh-border-soft)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.72)!important;
}

.navbar-brand,
.navbar a{
  color:var(--dh-bone)!important;
}

.navbar-necro-apocalypse .navbar-nav>li>a,
.navbar-default .navbar-nav>li>a,
.menu-bg-btn{
  border:1px solid rgba(166,139,82,.25)!important;
  border-radius:13px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 10px 22px rgba(0,0,0,.34)!important;
}

.menu-bg-forum{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/asylum-corridor.jpg")!important}
.menu-bg-files{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/forbidden-library.jpg")!important}
.menu-bg-doors{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/rusted-door.jpg")!important}
.menu-bg-mail{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/black-mail.jpg")!important}
.menu-bg-news{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/occult-terminal.jpg")!important}
.menu-bg-archive{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/cathedral-archive.jpg")!important}
.menu-bg-community{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/graveyard-network.jpg")!important}
.menu-bg-photos{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/cursed-gallery.jpg")!important}
.menu-bg-settings{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.44)),url("../horror-assets/premium-definitive/settings-chamber.jpg")!important}

.panel,
.card,
.well,
.necro-widget,
.modal-content,
.ae-modal-window,
.list-group-item,
.veleno-stat-card,
.dashboard-card{
  border-radius:var(--dh-radius)!important;
  background:
    linear-gradient(180deg,rgba(18,20,15,.96),rgba(5,6,6,.97)),
    radial-gradient(circle at 12% 0%,rgba(111,141,91,.10),transparent 34%)!important;
  border:1px solid var(--dh-border)!important;
  box-shadow:var(--dh-shadow), inset 0 0 0 1px rgba(255,255,255,.025)!important;
  color:var(--dh-bone)!important;
}

.panel-heading,
.card-header,
.modal-header,
legend,
.page-header{
  background:
    linear-gradient(90deg,rgba(47,113,102,.18),rgba(91,66,104,.16),rgba(126,23,39,.10))!important;
  border-color:var(--dh-border)!important;
  color:#f1e6cc!important;
}

.btn,
button,
input[type=submit],
input[type=button],
.btn-primary{
  border-radius:999px!important;
  border:1px solid rgba(166,139,82,.34)!important;
  background:linear-gradient(180deg,rgba(111,141,91,.24),rgba(47,113,102,.16))!important;
  color:#f5ead4!important;
  box-shadow:0 10px 22px rgba(0,0,0,.36)!important;
}

.btn:hover,
button:hover,
input[type=submit]:hover,
input[type=button]:hover{
  background:linear-gradient(180deg,rgba(154,130,77,.24),rgba(126,23,39,.17))!important;
  color:#fff5dd!important;
}

.dropdown-menu{
  background:
    linear-gradient(180deg,rgba(14,16,12,.98),rgba(4,5,5,.98)),
    url("../horror-assets/premium-definitive/occult-terminal.jpg") center/cover!important;
  border:1px solid var(--dh-border)!important;
  border-radius:14px!important;
  box-shadow:0 20px 44px rgba(0,0,0,.76)!important;
}

.dropdown-menu>li>a,
.dropdown-menu a,
.dropdown-item{
  color:var(--dh-bone)!important;
  border-radius:10px!important;
}

.dropdown-menu>li>a:hover,
.dropdown-menu a:hover,
.dropdown-item:hover{
  background:linear-gradient(90deg,rgba(111,141,91,.18),rgba(91,66,104,.16))!important;
  color:#fff4dd!important;
}

.veleno-cinematic-hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.46),rgba(0,0,0,.84)),
    url("../horror-assets/premium-definitive/cathedral-archive.jpg") center/cover no-repeat!important;
  border:1px solid var(--dh-border)!important;
}

.veleno-more-page-banner{
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.46)),
    url("../horror-assets/premium-definitive/settings-chamber.jpg")!important;
  background-size:cover!important;
  background-position:center!important;
  border:1px solid var(--dh-border)!important;
}

/* User settings / ufaults readability */
.veleno-ufaults-page,
.ufaults-page,
#ufaults,
form[name*="ufault" i],
form[action*="ufault" i]{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:220px!important;
  padding:18px!important;
  border-radius:18px!important;
  background:
    linear-gradient(180deg,rgba(18,20,15,.94),rgba(5,6,6,.96)),
    url("../horror-assets/premium-definitive/settings-chamber.jpg") center/cover!important;
  border:1px solid var(--dh-border)!important;
  box-shadow:var(--dh-shadow)!important;
}

.veleno-ufaults-page input,
.veleno-ufaults-page select,
.veleno-ufaults-page textarea,
.ufaults-page input,
.ufaults-page select,
.ufaults-page textarea{
  background:#070807!important;
  color:var(--dh-bone)!important;
  border:1px solid rgba(166,139,82,.35)!important;
}

@media (max-width:768px){
  body{background-attachment:scroll!important}
  .navbar{border-radius:0 0 14px 14px!important}
}



/* ==========================================================
   UFAULTS ORIGINAL RESTORE
   Visual-only skin for the restored original pages/More/ufaults.xjs.
   No visibility/display forcing and no logic override.
   ========================================================== */
.ufaults-premium-shell{
  background:
    linear-gradient(180deg,rgba(18,20,15,.94),rgba(5,6,6,.96)),
    radial-gradient(circle at 16% 0%,rgba(111,141,91,.10),transparent 34%)!important;
  border:1px solid rgba(166,139,82,.36)!important;
  border-radius:18px!important;
  box-shadow:0 20px 48px rgba(0,0,0,.62)!important;
  color:#eadfc6!important;
}
.ufaults-premium-shell label,
.ufaults-premium-shell legend,
.ufaults-premium-shell h1,
.ufaults-premium-shell h2,
.ufaults-premium-shell h3{
  color:#eadfc6!important;
}



/* ==========================================================
   UFAULTS HORROR PREMIUM FIELDS - global support
   Styling coerente per tutti i campi della pagina User Settings.
   ========================================================== */
body.is-ufaults-page .form-control,
body.is-ufaults-page input,
body.is-ufaults-page select,
body.is-ufaults-page textarea,
.ufaults-premium-shell .form-control,
.ufaults-premium-shell input,
.ufaults-premium-shell select,
.ufaults-premium-shell textarea{
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(5,7,6,.96),rgba(10,12,10,.94))!important;
  color:#eadfc6!important;
  border:1px solid rgba(166,139,82,.34)!important;
}
body.is-ufaults-page .form-control:focus,
body.is-ufaults-page input:focus,
body.is-ufaults-page select:focus,
body.is-ufaults-page textarea:focus,
.ufaults-premium-shell .form-control:focus,
.ufaults-premium-shell input:focus,
.ufaults-premium-shell select:focus,
.ufaults-premium-shell textarea:focus{
  border-color:rgba(111,141,91,.72)!important;
  box-shadow:0 0 0 3px rgba(111,141,91,.16),0 0 22px rgba(47,113,102,.22),inset 0 0 20px rgba(0,0,0,.62)!important;
}


/* =========================================================
   MORE MENU HORROR THUMBNAILS - PATCH RICHIESTA
   Aggiunge immagini horror/macabro solo alle selezioni sotto More.
   Non modifica logica, routing o stile centralizzato: usa le classi/menu esistenti.
   ========================================================= */
.navbar-necro-apocalypse .menu-horror-icon-more,
.navbar-default .menu-horror-icon-more{
  background-image:url('../horror-assets/menu-icons/archive.svg');
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-more,
.navbar-default .navbar-nav > li > a.menu-bg-more{
  background-image:url('../horror-assets/menu-bg/archive.svg')!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"],
.navbar-default .dropdown-menu a[href*="page=More/"]{
  position:relative!important;
  min-height:48px!important;
  padding:8px 14px 8px 10px!important;
  gap:11px!important;
  overflow:hidden!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="page=More/"] .menu-horror-icon{
  width:38px!important;
  height:38px!important;
  border-radius:10px!important;
  background-size:cover!important;
  background-position:center!important;
  opacity:.94!important;
  filter:sepia(.18) saturate(.9) contrast(1.12) brightness(.82)!important;
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.18),0 4px 12px rgba(0,0,0,.55)!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"]::after,
.navbar-default .dropdown-menu a[href*="page=More/"]::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(9,8,8,.20),rgba(126,23,39,.10),rgba(0,0,0,.22));
  opacity:.55;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"]:hover .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="page=More/"]:hover .menu-horror-icon{
  transform:translateY(-1px) scale(1.03)!important;
  filter:sepia(.10) saturate(1.05) contrast(1.18) brightness(.95)!important;
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.28),0 0 14px rgba(126,23,39,.36),0 4px 14px rgba(0,0,0,.62)!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="001-userlist.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="001-userlist.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/community.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="003-doorscan.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="003-doorscan.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/doors.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="004-donate.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="004-donate.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/support.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="005-quotes.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="005-quotes.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/quote.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="006-arcade-mame.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="006-arcade-mame.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/games.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="007-barza.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="007-barza.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-definitive/asylum-corridor.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="008-point.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="008-point.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-definitive/occult-terminal.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="009-IRC.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="009-IRC.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/irc.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="011-org-bbs.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="011-org-bbs.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-definitive/forbidden-library.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="012-nodelist.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="012-nodelist.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/nodelist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="013-randomBBS.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="013-randomBBS.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/randombbs.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="014-calendar.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="014-calendar.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/calendar.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="999-sbbslist.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="999-sbbslist.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-sections/archive.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ufaults.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="ufaults.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-definitive/settings-chamber.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ustats.xjs"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="ustats.xjs"] .menu-horror-icon{background-image:url('../horror-assets/premium-definitive/graveyard-network.jpg')!important;}
@media (max-width:767px){
  .navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"] .menu-horror-icon,
  .navbar-default .dropdown-menu a[href*="page=More/"] .menu-horror-icon{
    width:34px!important;
    height:34px!important;
  }
}

/* =========================================================
   MORE MENU FULL-BUTTON HORROR BACKGROUNDS - PATCH RICHIESTA
   Estende le immagini dalla sola icona all'intero pulsante delle voci sotto More.
   Non cambia markup, routing o logica: solo override CSS mirati e locali.
   ========================================================= */
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"],
.navbar-default .dropdown-menu a[href*="page=More/"]{
  position:relative!important;
  min-height:58px!important;
  padding:14px 16px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  border-bottom:1px solid rgba(232,220,196,.10)!important;
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.08),inset 0 -28px 42px rgba(0,0,0,.34)!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"]::before,
.navbar-default .dropdown-menu a[href*="page=More/"]::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.48) 46%,rgba(86,11,22,.28)),radial-gradient(circle at 86% 44%,rgba(232,220,196,.10),transparent 36%);
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"]::after,
.navbar-default .dropdown-menu a[href*="page=More/"]::after{
  background:linear-gradient(90deg,rgba(0,0,0,.24),rgba(126,23,39,.14),rgba(0,0,0,.42))!important;
  opacity:.72!important;
  z-index:0!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"] .menu-horror-icon,
.navbar-default .dropdown-menu a[href*="page=More/"] .menu-horror-icon{
  display:none!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"] .menu-label,
.navbar-default .dropdown-menu a[href*="page=More/"] .menu-label,
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"],
.navbar-default .dropdown-menu a[href*="page=More/"]{
  color:#f4ead2!important;
  text-shadow:0 2px 4px rgba(0,0,0,.95),0 0 14px rgba(126,23,39,.46)!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"]:hover,
.navbar-default .dropdown-menu a[href*="page=More/"]:hover{
  background-position:center 42%!important;
  filter:contrast(1.06) saturate(1.05)!important;
  box-shadow:inset 0 0 0 1px rgba(232,220,196,.18),0 0 20px rgba(126,23,39,.30),inset 0 -32px 52px rgba(0,0,0,.42)!important;
}
.navbar-necro-apocalypse .dropdown-menu a[href*="001-userlist.xjs"],
.navbar-default .dropdown-menu a[href*="001-userlist.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/community.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="003-doorscan.xjs"],
.navbar-default .dropdown-menu a[href*="003-doorscan.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/doors.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="004-donate.xjs"],
.navbar-default .dropdown-menu a[href*="004-donate.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/support.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="005-quotes.xjs"],
.navbar-default .dropdown-menu a[href*="005-quotes.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/quote.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="006-arcade-mame.xjs"],
.navbar-default .dropdown-menu a[href*="006-arcade-mame.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/games.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="007-barza.xjs"],
.navbar-default .dropdown-menu a[href*="007-barza.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-definitive/asylum-corridor.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="008-point.xjs"],
.navbar-default .dropdown-menu a[href*="008-point.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-definitive/occult-terminal.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="009-IRC.xjs"],
.navbar-default .dropdown-menu a[href*="009-IRC.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/irc.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="011-org-bbs.xjs"],
.navbar-default .dropdown-menu a[href*="011-org-bbs.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-definitive/forbidden-library.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="012-nodelist.xjs"],
.navbar-default .dropdown-menu a[href*="012-nodelist.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/nodelist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="013-randomBBS.xjs"],
.navbar-default .dropdown-menu a[href*="013-randomBBS.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/randombbs.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="014-calendar.xjs"],
.navbar-default .dropdown-menu a[href*="014-calendar.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/calendar.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="999-sbbslist.xjs"],
.navbar-default .dropdown-menu a[href*="999-sbbslist.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/archive.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ufaults.xjs"],
.navbar-default .dropdown-menu a[href*="ufaults.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-definitive/settings-chamber.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ustats.xjs"],
.navbar-default .dropdown-menu a[href*="ustats.xjs"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-definitive/graveyard-network.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="More/Photos/"],
.navbar-default .dropdown-menu a[href*="More/Photos/"]{background-image:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.42)),url('../horror-assets/premium-sections/photos.jpg')!important;}
@media (max-width:767px){
  .navbar-necro-apocalypse .dropdown-menu a[href*="page=More/"],
  .navbar-default .dropdown-menu a[href*="page=More/"]{
    min-height:52px!important;
    padding:12px 14px!important;
  }
}

/* =========================================================
   VELENO CINEMATIC HORROR CARD MENU PATCH
   - Top menu becomes selectable image cards
   - More dropdown becomes full-image cinematic cards
   - Pure CSS: no route/controller/menu logic changes
   ========================================================= */
:root{
  --veleno-card-ink:#f7ead0;
  --veleno-card-red:#9d1b2f;
  --veleno-card-gold:#d8bd7b;
}

.navbar-necro-apocalypse{
  padding-top:8px!important;
  padding-bottom:8px!important;
  overflow:visible!important;
}
.navbar-necro-apocalypse .navbar-collapse{overflow:visible!important;}
.navbar-necro-apocalypse .veleno-primary-menu{
  display:flex!important;
  align-items:stretch!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
.navbar-necro-apocalypse .navbar-nav>li{display:flex!important;align-items:stretch!important;}

/* Top-level entries: real horror cards */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
.navbar-default .navbar-nav>li>a.menu-bg-btn{
  width:132px!important;
  min-height:82px!important;
  padding:0!important;
  margin:5px 2px!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  text-align:center!important;
  overflow:hidden!important;
  background-size:cover!important;
  background-position:center!important;
  border:1px solid rgba(216,189,123,.32)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,244,204,.08),
    inset 0 -44px 42px rgba(0,0,0,.86),
    0 12px 28px rgba(0,0,0,.48),
    0 0 0 1px rgba(0,0,0,.55)!important;
  transform:translateZ(0)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn::before,
.navbar-default .navbar-nav>li>a.menu-bg-btn::before{
  content:""!important;
  position:absolute!important;
  inset:-3px!important;
  z-index:-2!important;
  background:inherit!important;
  background-size:cover!important;
  background-position:center!important;
  filter:contrast(1.2) saturate(1.1) brightness(.72) sepia(.18)!important;
  transform:scale(1.035)!important;
  transition:transform .32s ease,filter .32s ease!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn::after,
.navbar-default .navbar-nav>li>a.menu-bg-btn::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.16) 36%,rgba(0,0,0,.88) 100%),
    radial-gradient(circle at 50% 14%,rgba(255,226,164,.16),transparent 33%),
    radial-gradient(circle at 16% 86%,rgba(157,27,47,.38),transparent 42%),
    linear-gradient(90deg,rgba(0,0,0,.55),transparent 42%,rgba(0,0,0,.55))!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:hover,
.navbar-necro-apocalypse .navbar-nav>li.open>a.menu-bg-btn,
.navbar-default .navbar-nav>li>a.menu-bg-btn:hover,
.navbar-default .navbar-nav>li.open>a.menu-bg-btn{
  transform:translateY(-5px) scale(1.035)!important;
  border-color:rgba(255,227,159,.66)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,244,204,.15),
    inset 0 -48px 46px rgba(0,0,0,.88),
    0 18px 34px rgba(0,0,0,.62),
    0 0 26px rgba(157,27,47,.32),
    0 0 0 1px rgba(255,227,159,.18)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:hover::before,
.navbar-necro-apocalypse .navbar-nav>li.open>a.menu-bg-btn::before,
.navbar-default .navbar-nav>li>a.menu-bg-btn:hover::before,
.navbar-default .navbar-nav>li.open>a.menu-bg-btn::before{
  transform:scale(1.15)!important;
  filter:contrast(1.32) saturate(1.32) brightness(.92) sepia(.08)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-label,
.navbar-default .navbar-nav>li>a.menu-bg-btn .menu-label{
  width:100%!important;
  margin:0!important;
  padding:9px 8px 10px!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.72))!important;
  color:var(--veleno-card-ink)!important;
  font-size:12px!important;
  line-height:1.05!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  text-shadow:0 2px 3px #000,0 0 13px rgba(255,205,134,.42)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .caret{
  position:absolute!important;
  right:8px!important;
  bottom:12px!important;
  z-index:3!important;
  filter:drop-shadow(0 2px 3px #000)!important;
}

/* Premium image assignments for top cards */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-forum{background-image:url('../horror-assets/premium-sections/forum.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-files{background-image:url('../horror-assets/premium-sections/files.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-doors{background-image:url('../horror-assets/premium-sections/doors.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-mail{background-image:url('../horror-assets/premium-sections/mail.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-news{background-image:url('../horror-assets/premium-sections/news.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-archive{background-image:url('../horror-assets/premium-sections/archive.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-community{background-image:url('../horror-assets/premium-sections/community.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-settings{background-image:url('../horror-assets/premium-sections/profile.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-stats{background-image:url('../horror-assets/premium-sections/nodelist.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-login,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-register,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-user{background-image:url('../horror-assets/premium-sections/profile.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-more,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-default{background-image:url('../horror-assets/premium-definitive/cathedral-archive.jpg')!important;}

/* Dropdown containers become dark gallery panels */
.navbar-necro-apocalypse .dropdown-menu,
.navbar-necro-apocalypse .dropdown-menu-more{
  padding:14px!important;
  min-width:330px!important;
  border-radius:20px!important;
  border:1px solid rgba(216,189,123,.24)!important;
  background:
    linear-gradient(180deg,rgba(10,7,8,.96),rgba(3,3,4,.98)),
    url('../horror-assets/static-noise.svg')!important;
  box-shadow:0 24px 55px rgba(0,0,0,.78),0 0 32px rgba(105,13,27,.22)!important;
}
.navbar-necro-apocalypse .dropdown-menu>li{margin:0 0 10px!important;}
.navbar-necro-apocalypse .dropdown-menu>li:last-child{margin-bottom:0!important;}

/* More entries: full selectable cinematic cards */
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn{
  position:relative!important;
  isolation:isolate!important;
  width:100%!important;
  min-height:86px!important;
  padding:0!important;
  border-radius:17px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  border:1px solid rgba(216,189,123,.22)!important;
  background-color:#080809!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 9px 22px rgba(0,0,0,.48)!important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn::before,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn::before{
  content:""!important;
  position:absolute!important;
  inset:-4px!important;
  z-index:-2!important;
  background:inherit!important;
  background-size:cover!important;
  background-position:center!important;
  filter:contrast(1.2) saturate(1.08) brightness(.66) sepia(.12)!important;
  transform:scale(1.03)!important;
  transition:transform .32s ease,filter .32s ease!important;
}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn::after,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.46) 54%,rgba(0,0,0,.16)),
    linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.82)),
    radial-gradient(circle at 85% 22%,rgba(216,189,123,.16),transparent 32%),
    radial-gradient(circle at 14% 78%,rgba(157,27,47,.35),transparent 38%)!important;
}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:hover,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn:hover{
  transform:translateX(7px) scale(1.018)!important;
  border-color:rgba(255,222,154,.58)!important;
  box-shadow:inset 0 0 0 1px rgba(255,244,204,.12),0 15px 28px rgba(0,0,0,.62),0 0 20px rgba(157,27,47,.28)!important;
}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:hover::before,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn:hover::before{
  transform:scale(1.13)!important;
  filter:contrast(1.34) saturate(1.24) brightness(.88) sepia(.06)!important;
}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn .menu-horror-icon,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn .menu-horror-icon{display:none!important;}
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn .menu-label{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:13px 16px!important;
  background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.38),transparent)!important;
  color:var(--veleno-card-ink)!important;
  font-weight:900!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 4px #000,0 0 14px rgba(255,210,145,.36)!important;
}

/* More-specific imagery: every topic gets its own card artwork */
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-community{background-image:url('../horror-assets/premium-sections/community.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-doors{background-image:url('../horror-assets/premium-sections/doors.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-support{background-image:url('../horror-assets/premium-sections/support.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-quote{background-image:url('../horror-assets/premium-sections/quote.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-jokes{background-image:url('../horror-assets/premium-sections/games.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-point{background-image:url('../horror-assets/premium-sections/nodelist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-chat{background-image:url('../horror-assets/premium-sections/irc.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-random{background-image:url('../horror-assets/premium-sections/randombbs.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-nodelist{background-image:url('../horror-assets/premium-sections/nodelist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-calendar{background-image:url('../horror-assets/premium-sections/calendar.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-photos{background-image:url('../horror-assets/premium-sections/photos.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-settings{background-image:url('../horror-assets/premium-sections/profile.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-stats{background-image:url('../horror-assets/premium-sections/archive.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu-more .menu-bg-default{background-image:url('../horror-assets/premium-definitive/cathedral-archive.jpg')!important;}

/* Nested submenus stay usable, but look like compact cursed cards */
.navbar-necro-apocalypse .veleno-nested-submenu>.dropdown-menu{
  min-width:260px!important;
  max-width:300px!important;
}
.navbar-necro-apocalypse .dropdown-submenu>a.menu-bg-btn,
.navbar-necro-apocalypse .veleno-nested-submenu>a.menu-bg-btn{
  min-height:76px!important;
}

@media (max-width:1199px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn{width:118px!important;min-height:76px!important;}
}
@media (max-width:991px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn{width:106px!important;min-height:70px!important;}
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-label{font-size:11px!important;letter-spacing:.09em!important;}
}
@media (max-width:767px){
  .navbar-necro-apocalypse .veleno-primary-menu{display:block!important;}
  .navbar-necro-apocalypse .navbar-nav>li{display:block!important;}
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-default .navbar-nav>li>a.menu-bg-btn{
    width:calc(100% - 18px)!important;
    min-height:92px!important;
    margin:8px 9px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu,
  .navbar-necro-apocalypse .dropdown-menu-more{
    position:static!important;
    width:calc(100% - 18px)!important;
    min-width:0!important;
    margin:8px 9px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn{
    min-height:88px!important;
  }
}

/* =========================================================
   VELENO IMAGE-CARD OVERRIDE v2
   Created after visual review: cards now use actual generated
   artwork inside each selectable button, not dim icon panels.
   Logic/routes unchanged: CSS + image assets only.
   ========================================================= */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
.navbar-default .navbar-nav>li>a.menu-bg-btn{
  position:relative!important;
  isolation:isolate!important;
  width:118px!important;
  min-height:86px!important;
  height:86px!important;
  padding:0!important;
  margin:4px 3px!important;
  border-radius:15px!important;
  overflow:hidden!important;
  background-size:cover!important;
  background-position:center 42%!important;
  background-repeat:no-repeat!important;
  border:1px solid rgba(218,188,122,.50)!important;
  box-shadow:inset 0 0 0 1px rgba(255,240,196,.13), inset 0 -34px 30px rgba(0,0,0,.58), 0 8px 20px rgba(0,0,0,.62), 0 0 12px rgba(128,14,31,.22)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:before,
.navbar-default .navbar-nav>li>a.menu-bg-btn:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  background:inherit!important;
  background-size:cover!important;
  background-position:center 42%!important;
  background-repeat:no-repeat!important;
  filter:contrast(1.16) saturate(1.2) brightness(1.02)!important;
  transform:scale(1.01)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:after,
.navbar-default .navbar-nav>li>a.menu-bg-btn:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.70) 100%), radial-gradient(circle at 50% 94%,rgba(188,18,38,.65),transparent 21%)!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-horror-icon,
.navbar-default .navbar-nav>li>a.menu-bg-btn .menu-horror-icon{display:none!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-label,
.navbar-default .navbar-nav>li>a.menu-bg-btn .menu-label{
  position:relative!important;
  z-index:3!important;
  padding:7px 6px 9px!important;
  font-size:11px!important;
  letter-spacing:.10em!important;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.74))!important;
}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:hover,
.navbar-default .navbar-nav>li>a.menu-bg-btn:hover{
  transform:translateY(-3px) scale(1.025)!important;
  border-color:rgba(255,221,145,.82)!important;
  box-shadow:inset 0 0 0 1px rgba(255,240,196,.18), inset 0 -34px 30px rgba(0,0,0,.54), 0 13px 28px rgba(0,0,0,.68), 0 0 25px rgba(169,22,44,.45)!important;
}

/* Top navigation: unique generated images per button */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-forum,
.navbar-default .navbar-nav>li>a.menu-bg-forum{background-image:url('../horror-assets/generated-cards/top-forum.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-files,
.navbar-default .navbar-nav>li>a.menu-bg-files{background-image:url('../horror-assets/generated-cards/top-files.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-doors,
.navbar-default .navbar-nav>li>a.menu-bg-doors{background-image:url('../horror-assets/generated-cards/top-doors.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-news,
.navbar-default .navbar-nav>li>a.menu-bg-news{background-image:url('../horror-assets/generated-cards/top-oneliners.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-chat,
.navbar-default .navbar-nav>li>a.menu-bg-chat{background-image:url('../horror-assets/generated-cards/top-chat.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-more,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-default,
.navbar-default .navbar-nav>li>a.menu-bg-more,
.navbar-default .navbar-nav>li>a.menu-bg-default{background-image:url('../horror-assets/generated-cards/top-more.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-register,
.navbar-default .navbar-nav>li>a.menu-bg-register{background-image:url('../horror-assets/generated-cards/top-register.jpg')!important;}
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-login,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-user,
.navbar-default .navbar-nav>li>a.menu-bg-login,
.navbar-default .navbar-nav>li>a.menu-bg-user{background-image:url('../horror-assets/generated-cards/top-login.jpg')!important;}

/* More dropdown/gallery: larger, real image cards with per-entry artwork */
.navbar-necro-apocalypse .dropdown-menu,
.navbar-default .dropdown-menu{
  background:linear-gradient(180deg,rgba(7,5,6,.98),rgba(0,0,0,.98))!important;
}
.navbar-necro-apocalypse .dropdown-menu-more,
.navbar-default .dropdown-menu-more{
  min-width:305px!important;
  padding:11px!important;
}
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn,
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
.navbar-default .dropdown-menu .dropdown-item.menu-bg-btn,
.navbar-default .dropdown-menu-more>li>a.menu-bg-btn{
  position:relative!important;
  isolation:isolate!important;
  min-height:104px!important;
  height:104px!important;
  border-radius:14px!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  border:1px solid rgba(216,189,123,.44)!important;
  box-shadow:inset 0 0 0 1px rgba(255,240,196,.12), inset 0 -48px 38px rgba(0,0,0,.64), 0 10px 22px rgba(0,0,0,.55)!important;
}
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn:before,
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:before,
.navbar-default .dropdown-menu .dropdown-item.menu-bg-btn:before,
.navbar-default .dropdown-menu-more>li>a.menu-bg-btn:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  background:inherit!important;
  background-size:cover!important;
  background-position:center!important;
  filter:contrast(1.18) saturate(1.18) brightness(1.0)!important;
}
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn:after,
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:after,
.navbar-default .dropdown-menu .dropdown-item.menu-bg-btn:after,
.navbar-default .dropdown-menu-more>li>a.menu-bg-btn:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.08) 55%,rgba(0,0,0,.35)),linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.72)),radial-gradient(circle at 50% 96%,rgba(190,18,40,.58),transparent 18%)!important;
}
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn .menu-label,
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
.navbar-default .dropdown-menu .dropdown-item.menu-bg-btn .menu-label,
.navbar-default .dropdown-menu-more>li>a.menu-bg-btn .menu-label{
  width:100%!important;
  padding:10px 13px 12px!important;
  text-align:left!important;
  font-size:14px!important;
  letter-spacing:.08em!important;
  background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.34),transparent)!important;
}
.navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn:hover,
.navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:hover,
.navbar-default .dropdown-menu .dropdown-item.menu-bg-btn:hover,
.navbar-default .dropdown-menu-more>li>a.menu-bg-btn:hover{
  transform:translateX(5px) scale(1.012)!important;
  border-color:rgba(255,221,145,.80)!important;
}

/* Specific generated artwork for More entries */
.navbar-necro-apocalypse .dropdown-menu a[href*="001-userlist.xjs"],
.navbar-default .dropdown-menu a[href*="001-userlist.xjs"]{background-image:url('../horror-assets/generated-cards/more-userlist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="009-IRC.xjs"],
.navbar-default .dropdown-menu a[href*="009-IRC.xjs"]{background-image:url('../horror-assets/generated-cards/more-irc.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="013-randomBBS.xjs"],
.navbar-default .dropdown-menu a[href*="013-randomBBS.xjs"]{background-image:url('../horror-assets/generated-cards/more-randombbs.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="012-nodelist.xjs"],
.navbar-default .dropdown-menu a[href*="012-nodelist.xjs"]{background-image:url('../horror-assets/generated-cards/more-nodelist.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="014-calendar.xjs"],
.navbar-default .dropdown-menu a[href*="014-calendar.xjs"]{background-image:url('../horror-assets/generated-cards/more-calendar.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="More/Photos/"],
.navbar-default .dropdown-menu a[href*="More/Photos/"]{background-image:url('../horror-assets/generated-cards/more-photobbs.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ustats.xjs"],
.navbar-default .dropdown-menu a[href*="ustats.xjs"]{background-image:url('../horror-assets/generated-cards/more-stats.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="008-point.xjs"],
.navbar-default .dropdown-menu a[href*="008-point.xjs"]{background-image:url('../horror-assets/generated-cards/more-point.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="005-quotes.xjs"],
.navbar-default .dropdown-menu a[href*="005-quotes.xjs"]{background-image:url('../horror-assets/generated-cards/more-quotes.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="006-arcade-mame.xjs"],
.navbar-default .dropdown-menu a[href*="006-arcade-mame.xjs"]{background-image:url('../horror-assets/generated-cards/more-arcade.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="003-doorscan.xjs"],
.navbar-default .dropdown-menu a[href*="003-doorscan.xjs"]{background-image:url('../horror-assets/generated-cards/more-downloads.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="004-donate.xjs"],
.navbar-default .dropdown-menu a[href*="004-donate.xjs"]{background-image:url('../horror-assets/generated-cards/more-point.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="007-barza.xjs"],
.navbar-default .dropdown-menu a[href*="007-barza.xjs"]{background-image:url('../horror-assets/generated-cards/more-mame.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="011-org-bbs.xjs"],
.navbar-necro-apocalypse .dropdown-menu a[href*="999-sbbslist.xjs"],
.navbar-default .dropdown-menu a[href*="011-org-bbs.xjs"],
.navbar-default .dropdown-menu a[href*="999-sbbslist.xjs"]{background-image:url('../horror-assets/generated-cards/more-downloads.jpg')!important;}
.navbar-necro-apocalypse .dropdown-menu a[href*="ufaults.xjs"],
.navbar-default .dropdown-menu a[href*="ufaults.xjs"]{background-image:url('../horror-assets/generated-cards/more-stats.jpg')!important;}

@media (max-width:1199px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-default .navbar-nav>li>a.menu-bg-btn{width:108px!important;height:80px!important;min-height:80px!important;}
}
@media (max-width:991px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-default .navbar-nav>li>a.menu-bg-btn{width:98px!important;height:76px!important;min-height:76px!important;}
}
@media (max-width:767px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-default .navbar-nav>li>a.menu-bg-btn{width:calc(100% - 18px)!important;height:94px!important;min-height:94px!important;}
  .navbar-necro-apocalypse .dropdown-menu .dropdown-item.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-default .dropdown-menu .dropdown-item.menu-bg-btn,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn{height:96px!important;min-height:96px!important;}
}


/* =========================================================
   VELENO NAV AUTH RIGHT PATCH
   Sposta le card Register/Login sul lato destro della barra
   senza modificare la logica XJS: cambia solo layout/stile.
   ========================================================= */
@media (min-width:768px){
  .navbar-necro-apocalypse .navbar-collapse{
    position:relative!important;
    padding-right:248px!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu{
    position:absolute!important;
    right:10px!important;
    top:0!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    display:flex!important;
    align-items:stretch!important;
    justify-content:flex-end!important;
    z-index:10040!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu>li{
    float:none!important;
    display:flex!important;
    align-items:stretch!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu>li>a.menu-bg-btn{
    margin-left:4px!important;
    margin-right:4px!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu .dropdown-menu{
    right:4px!important;
    left:auto!important;
  }
}
@media (max-width:767px){
  .navbar-necro-apocalypse .veleno-auth-menu{
    position:relative!important;
    right:auto!important;
    top:auto!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
  }
}

/* =========================================================
   VELENO AUTH DROPDOWN IMAGE CARDS PATCH
   Adds real card images to authenticated user dropdown items:
   Mail, User Settings, User Statistics, Logout.
   ========================================================= */
.navbar-necro-apocalypse .dropdown-menu-auth-cards,
.navbar-default .dropdown-menu-auth-cards{
  min-width:305px!important;
  padding:11px!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li,
.navbar-default .dropdown-menu-auth-cards>li{
  display:block!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn{
  display:flex!important;
  align-items:flex-end!important;
  width:100%!important;
  margin:0 0 10px!important;
  color:#f7e7bc!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn .badge,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn .badge{
  position:absolute!important;
  right:12px!important;
  top:10px!important;
  z-index:4!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.menu-bg-mail,
.navbar-default .dropdown-menu-auth-cards>li>a.menu-bg-mail{
  background-image:url('../horror-assets/premium-definitive/black-mail.jpg')!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.menu-bg-settings,
.navbar-default .dropdown-menu-auth-cards>li>a.menu-bg-settings{
  background-image:url('../horror-assets/premium-definitive/settings-chamber.jpg')!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.menu-bg-stats,
.navbar-default .dropdown-menu-auth-cards>li>a.menu-bg-stats{
  background-image:url('../horror-assets/generated-cards/more-stats.jpg')!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.menu-bg-logout,
.navbar-default .dropdown-menu-auth-cards>li>a.menu-bg-logout{
  background-image:url('../horror-assets/premium-definitive/rusted-door.jpg')!important;
}


/* =========================================================
   VELENO AUTH NAV FINAL RESPONSIVE ALIGNMENT + GOTHIC HOVER
   Richieste: bordo destro stabile, separatore, hover rosso,
   mobile/tablet responsive mantenendo estetica Veleno BBS.
   ========================================================= */
@media (min-width:768px){
  .navbar-necro-apocalypse .container,
  .navbar-necro-apocalypse .container-fluid{
    position:relative!important;
  }
  .navbar-necro-apocalypse .navbar-collapse{
    position:static!important;
    display:flex!important;
    align-items:stretch!important;
    width:100%!important;
    padding-right:0!important;
  }
  .navbar-necro-apocalypse .veleno-primary-menu{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:calc(100% - 260px)!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu{
    position:static!important;
    float:none!important;
    margin-left:auto!important;
    margin-right:0!important;
    padding-left:16px!important;
    height:auto!important;
    display:flex!important;
    align-items:stretch!important;
    justify-content:flex-end!important;
    flex:0 0 auto!important;
    z-index:10040!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu::before{
    content:"";
    display:block;
    align-self:center;
    width:1px;
    height:46px;
    margin:7px 12px 7px 0;
    background:linear-gradient(to bottom,transparent,rgba(160,18,33,.78),rgba(236,198,138,.32),rgba(160,18,33,.78),transparent);
    box-shadow:0 0 12px rgba(160,18,33,.48),0 0 22px rgba(0,0,0,.85);
  }
  .navbar-necro-apocalypse .veleno-auth-menu>li{
    float:none!important;
    display:flex!important;
    align-items:stretch!important;
    position:relative!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu>li>a.menu-bg-btn{
    margin:7px 0 7px 4px!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu .dropdown-menu,
  .navbar-default .veleno-auth-menu .dropdown-menu{
    left:auto!important;
    right:0!important;
    transform:none!important;
  }
}

/* Horror/gothic red hover shared by nav buttons and auth cards */
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover,
.navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn,
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover,
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:focus,
.navbar-default .navbar-nav > li > a.menu-bg-btn:hover,
.navbar-default .navbar-nav > li.open > a.menu-bg-btn,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:focus{
  color:#fff3df!important;
  border-color:rgba(255,35,54,.62)!important;
  box-shadow:inset 0 0 0 1px rgba(255,30,48,.28),inset 0 -18px 42px rgba(128,0,20,.28),0 9px 24px rgba(0,0,0,.58),0 0 18px rgba(210,0,30,.36),0 0 34px rgba(95,0,14,.28)!important;
  text-shadow:0 2px 7px rgba(0,0,0,.96),0 0 12px rgba(255,30,50,.65)!important;
  animation:velenoBloodPulse 1.7s ease-in-out infinite alternate;
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover::after,
.navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn::after,
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover::after,
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:focus::after,
.navbar-default .navbar-nav > li > a.menu-bg-btn:hover::after,
.navbar-default .navbar-nav > li.open > a.menu-bg-btn::after,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover::after,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:focus::after{
  background:
    linear-gradient(90deg,rgba(18,0,4,.72),rgba(90,0,18,.36) 48%,rgba(9,0,4,.76)),
    radial-gradient(circle at 20% 18%,rgba(255,28,48,.40),transparent 42%),
    radial-gradient(circle at 78% 70%,rgba(120,0,20,.34),transparent 45%)!important;
}
@keyframes velenoBloodPulse{
  from{filter:saturate(1.02) contrast(1.04);}
  to{filter:saturate(1.22) contrast(1.12);}
}

/* Auth dropdown cards: full bleed images, compact and right-aligned */
.navbar-necro-apocalypse .dropdown-menu-auth-cards,
.navbar-default .dropdown-menu-auth-cards{
  right:0!important;
  left:auto!important;
  min-width:305px!important;
  max-width:min(330px,calc(100vw - 22px))!important;
  box-sizing:border-box!important;
  border:1px solid rgba(170,22,38,.38)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.82),0 0 28px rgba(110,0,20,.30)!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn{
  position:relative!important;
  min-height:68px!important;
  border-radius:12px!important;
  background-size:cover!important;
  background-position:center!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover,
.navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover{
  transform:translateX(-2px) translateY(-1px)!important;
}

/* Tablet: keep the auth block right, but make cards slightly leaner */
@media (min-width:768px) and (max-width:991px){
  .navbar-necro-apocalypse .veleno-primary-menu{
    max-width:calc(100% - 205px)!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu{
    padding-left:10px!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu::before{
    margin-right:8px!important;
    height:40px!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu>li>a.menu-bg-btn{
    min-width:88px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-auth-cards,
  .navbar-default .dropdown-menu-auth-cards{
    min-width:280px!important;
  }
}

/* Mobile: stacked, full-width, readable horror cards inside hamburger */
@media (max-width:767px){
  .navbar-necro-apocalypse .navbar-collapse{
    max-height:calc(100vh - 58px)!important;
    overflow-y:auto!important;
    border-top:1px solid rgba(150,18,34,.42)!important;
    box-shadow:inset 0 14px 24px rgba(0,0,0,.55)!important;
  }
  .navbar-necro-apocalypse .veleno-primary-menu,
  .navbar-necro-apocalypse .veleno-auth-menu{
    float:none!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu{
    margin-top:10px!important;
    padding-top:12px!important;
    border-top:1px solid rgba(160,18,33,.65)!important;
    box-shadow:inset 0 1px 0 rgba(239,210,150,.12)!important;
  }
  .navbar-necro-apocalypse .veleno-auth-menu::before{
    content:"AUTHENTICATION";
    display:block;
    margin:0 10px 8px!important;
    color:#d6b273!important;
    font-size:10px!important;
    letter-spacing:.22em!important;
    text-transform:uppercase!important;
    text-shadow:0 0 10px rgba(150,0,22,.72)!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li,
  .navbar-necro-apocalypse .veleno-auth-menu>li{
    float:none!important;
    display:block!important;
    width:100%!important;
  }
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
  .navbar-default .navbar-nav > li > a.menu-bg-btn{
    width:calc(100% - 14px)!important;
    margin:6px 7px!important;
    justify-content:flex-start!important;
    min-height:58px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-auth-cards,
  .navbar-default .dropdown-menu-auth-cards,
  .navbar-necro-apocalypse .veleno-auth-menu .dropdown-menu,
  .navbar-default .veleno-auth-menu .dropdown-menu{
    position:static!important;
    float:none!important;
    width:calc(100% - 14px)!important;
    min-width:0!important;
    max-width:none!important;
    margin:4px 7px 10px!important;
    padding:9px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn,
  .navbar-default .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn{
    min-height:66px!important;
    margin-bottom:8px!important;
    justify-content:flex-start!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover,
  .navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:hover,
  .navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a.dropdown-item.menu-bg-btn:focus{
    animation:none!important;
  }
}

/* =========================================================
   VELENO BBS - Gothic UI advanced polish
   Glow rosso, off-canvas mobile, separatore auth, avatar frame,
   toast macabri e rifinitura dashboard/card.
   ========================================================= */
:root{
  --veleno-blood:#b3122b;
  --veleno-blood-hot:#ff244c;
  --veleno-blood-dark:#3b0711;
  --veleno-ash:#e9dec2;
}
@keyframes velenoBloodPulse{
  0%,100%{box-shadow:inset 0 0 0 1px rgba(255,36,76,.16),0 6px 18px rgba(0,0,0,.46),0 0 0 rgba(179,18,43,0)}
  50%{box-shadow:inset 0 0 0 1px rgba(255,36,76,.42),0 9px 24px rgba(0,0,0,.62),0 0 22px rgba(179,18,43,.42)}
}
@keyframes velenoMenuReveal{
  from{opacity:0;transform:translateY(-8px) scale(.985);filter:blur(2px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
@keyframes velenoToastIn{
  from{opacity:0;transform:translateX(18px) translateY(-6px);filter:blur(2px)}
  to{opacity:1;transform:translateX(0) translateY(0);filter:blur(0)}
}
.navbar-necro-apocalypse.veleno-gothic-enhanced{
  border-bottom:1px solid rgba(255,36,76,.32)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.50),0 0 28px rgba(179,18,43,.12)!important;
}
.navbar-necro-apocalypse .navbar-collapse{
  display:flex!important;
  align-items:center!important;
}
.navbar-necro-apocalypse .veleno-primary-menu{flex:1 1 auto!important;min-width:0!important;}
.navbar-necro-apocalypse .veleno-auth-menu{
  margin-left:auto!important;
  padding-left:18px!important;
  border-left:1px solid rgba(255,36,76,.38)!important;
  box-shadow:-12px 0 18px -18px rgba(255,36,76,.85)!important;
  float:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
}
.navbar-necro-apocalypse .veleno-auth-separator-label{
  display:flex!important;
  align-items:center!important;
  height:54px!important;
  margin:7px 8px 7px 0!important;
  pointer-events:none!important;
}
.navbar-necro-apocalypse .veleno-auth-separator-label span{
  display:inline-block;
  padding:2px 7px;
  border:1px solid rgba(255,36,76,.32);
  border-radius:999px;
  color:rgba(233,222,194,.62);
  background:linear-gradient(180deg,rgba(48,4,13,.75),rgba(0,0,0,.25));
  font-size:10px;
  letter-spacing:.18em;
  text-shadow:0 0 10px rgba(255,36,76,.45);
}
.navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn:hover,
.navbar-necro-apocalypse .navbar-nav > li.open > a.menu-bg-btn,
.navbar-necro-apocalypse .dropdown-menu>li>a.menu-bg-btn:hover,
.navbar-necro-apocalypse .dropdown-item.menu-bg-btn:hover{
  animation:velenoBloodPulse 1.8s ease-in-out infinite!important;
  border-color:rgba(255,36,76,.58)!important;
  color:#fff3df!important;
  text-shadow:0 0 9px rgba(255,36,76,.75),0 2px 5px rgba(0,0,0,.95)!important;
}
.navbar-necro-apocalypse .dropdown-menu{
  animation:velenoMenuReveal .18s ease-out both;
  border:1px solid rgba(255,36,76,.28)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.72),0 0 24px rgba(179,18,43,.17)!important;
  background:linear-gradient(180deg,rgba(13,9,10,.96),rgba(3,3,4,.98))!important;
}
.navbar-necro-apocalypse .menu-bg-user .menu-horror-icon,
.navbar-necro-apocalypse .veleno-user-avatar-frame .menu-horror-icon{
  display:inline-block!important;
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  border:1px solid rgba(255,36,76,.42)!important;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.45),0 0 14px rgba(179,18,43,.45)!important;
}
.navbar-necro-apocalypse .veleno-user-avatar-frame::before{
  filter:saturate(.96) contrast(1.18) brightness(.76) sepia(.05)!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards{
  right:0!important;
  left:auto!important;
  min-width:260px!important;
  padding:10px!important;
}
.navbar-necro-apocalypse .dropdown-menu-auth-cards>li>a,
.navbar-necro-apocalypse .dropdown-menu-auth-cards .dropdown-item{
  width:100%!important;
  min-height:56px!important;
  margin:5px 0!important;
  border-radius:12px!important;
}
.veleno-toast-host{position:fixed;top:78px;right:18px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none;}
.veleno-toast{min-width:250px;max-width:360px;padding:12px 14px;border:1px solid rgba(255,36,76,.38);border-radius:14px;background:linear-gradient(135deg,rgba(15,4,8,.96),rgba(0,0,0,.94));color:var(--veleno-ash);box-shadow:0 12px 28px rgba(0,0,0,.68),0 0 22px rgba(179,18,43,.28);opacity:0;transform:translateX(18px);display:flex;align-items:center;gap:10px;letter-spacing:.04em;text-shadow:0 0 8px rgba(255,36,76,.38);}
.veleno-toast.is-visible{animation:velenoToastIn .22s ease-out forwards;}
.veleno-toast-sigil{color:var(--veleno-blood-hot);font-size:18px;text-shadow:0 0 12px rgba(255,36,76,.85);}
.panel,.card,.well,.list-group-item,.jumbotron{border-color:rgba(255,36,76,.18)!important;box-shadow:0 8px 22px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.025)!important;}
.panel:hover,.card:hover,.well:hover{box-shadow:0 12px 30px rgba(0,0,0,.38),0 0 18px rgba(179,18,43,.13)!important;}
@media (max-width:991px) and (min-width:768px){
  .navbar-necro-apocalypse .navbar-collapse{flex-wrap:wrap!important;}
  .navbar-necro-apocalypse .veleno-primary-menu{flex:1 1 100%!important;display:flex!important;flex-wrap:wrap!important;}
  .navbar-necro-apocalypse .veleno-auth-menu{margin-left:auto!important;margin-top:2px!important;}
}
@media (max-width:767px){
  body.veleno-nav-locked{overflow:hidden!important;}
  .navbar-necro-apocalypse .navbar-collapse{
    display:block!important;
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(86vw,360px)!important;
    height:100vh!important;
    max-height:100vh!important;
    padding:76px 14px 22px!important;
    overflow-y:auto!important;
    background:linear-gradient(180deg,rgba(17,7,10,.98),rgba(0,0,0,.98))!important;
    border-left:1px solid rgba(255,36,76,.36)!important;
    box-shadow:-22px 0 45px rgba(0,0,0,.76),-4px 0 24px rgba(179,18,43,.22)!important;
    transform:translateX(105%)!important;
    transition:transform .28s cubic-bezier(.2,.78,.25,1)!important;
    z-index:9998!important;
  }
  .navbar-necro-apocalypse .navbar-collapse.in{transform:translateX(0)!important;}
  .veleno-nav-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;z-index:9997;}
  .navbar-necro-apocalypse.veleno-menu-open ~ .veleno-nav-backdrop,
  body.veleno-nav-locked .veleno-nav-backdrop{opacity:1;visibility:visible;}
  .navbar-necro-apocalypse .veleno-primary-menu,
  .navbar-necro-apocalypse .veleno-auth-menu{display:block!important;width:100%!important;margin:0!important;padding:0!important;border-left:0!important;box-shadow:none!important;float:none!important;}
  .navbar-necro-apocalypse .veleno-auth-menu{margin-top:14px!important;padding-top:14px!important;border-top:1px solid rgba(255,36,76,.36)!important;}
  .navbar-necro-apocalypse .veleno-auth-separator-label{height:auto!important;margin:0 7px 8px!important;justify-content:center!important;}
  .navbar-necro-apocalypse .navbar-nav>li{float:none!important;width:100%!important;}
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-item.menu-bg-btn{width:100%!important;justify-content:flex-start!important;min-height:58px!important;margin:7px 0!important;padding:11px 14px!important;}
  .navbar-necro-apocalypse .dropdown-menu{position:static!important;float:none!important;width:100%!important;min-width:0!important;margin:6px 0 10px!important;padding:8px!important;}
  .navbar-necro-apocalypse .dropdown-menu-auth-cards{min-width:0!important;}
  .veleno-toast-host{top:auto;right:12px;left:12px;bottom:14px;}
  .veleno-toast{min-width:0;max-width:none;width:100%;}
}
@media (prefers-reduced-motion:reduce){
  .navbar-necro-apocalypse *, .veleno-toast{animation:none!important;transition:none!important;}
}

/* =========================================================
   VELENO MORE MENU COMPACT FIX
   Riduce SOLO le card del dropdown MORE, evitando l'effetto
   full-width/full-page visto dopo la patch IRC. Non tocca
   navbar principale, card auth, sidebar o contenuti pagina.
   ========================================================= */
@media (min-width:768px){
  .navbar-necro-apocalypse .navbar-nav>li.dropdown.open>a.menu-bg-more + .dropdown-menu,
  .navbar-necro-apocalypse .navbar-nav>li.dropdown.open>.dropdown-menu-more,
  .navbar-necro-apocalypse .navbar-nav>li.dropdown>.dropdown-menu-more,
  .navbar-default .navbar-nav>li.dropdown.open>a.menu-bg-more + .dropdown-menu,
  .navbar-default .navbar-nav>li.dropdown.open>.dropdown-menu-more,
  .navbar-default .navbar-nav>li.dropdown>.dropdown-menu-more{
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    padding:9px!important;
    left:auto!important;
    right:auto!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .dropdown-menu-more>li,
  .navbar-default .dropdown-menu-more>li{
    margin:0 0 6px!important;
  }

  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu-more .dropdown-item.menu-bg-btn,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-default .dropdown-menu-more .dropdown-item.menu-bg-btn{
    width:100%!important;
    min-height:56px!important;
    height:56px!important;
    padding:0!important;
    margin:0!important;
    border-radius:10px!important;
    background-size:cover!important;
    background-position:center 45%!important;
    box-shadow:inset 0 0 0 1px rgba(255,240,196,.08), inset 0 -25px 24px rgba(0,0,0,.72), 0 5px 12px rgba(0,0,0,.46)!important;
  }

  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
  .navbar-necro-apocalypse .dropdown-menu-more .dropdown-item.menu-bg-btn .menu-label,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
  .navbar-default .dropdown-menu-more .dropdown-item.menu-bg-btn .menu-label{
    padding:8px 11px!important;
    font-size:11px!important;
    line-height:1.1!important;
    letter-spacing:.07em!important;
    white-space:normal!important;
  }

  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn:hover,
  .navbar-necro-apocalypse .dropdown-menu-more .dropdown-item.menu-bg-btn:hover,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn:hover,
  .navbar-default .dropdown-menu-more .dropdown-item.menu-bg-btn:hover{
    transform:translateX(3px) scale(1.006)!important;
  }
}

@media (max-width:767px){
  .navbar-necro-apocalypse .dropdown-menu-more,
  .navbar-default .dropdown-menu-more{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:7px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu-more .dropdown-item.menu-bg-btn,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn,
  .navbar-default .dropdown-menu-more .dropdown-item.menu-bg-btn{
    min-height:54px!important;
    height:54px!important;
    border-radius:10px!important;
  }
  .navbar-necro-apocalypse .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
  .navbar-necro-apocalypse .dropdown-menu-more .dropdown-item.menu-bg-btn .menu-label,
  .navbar-default .dropdown-menu-more>li>a.menu-bg-btn .menu-label,
  .navbar-default .dropdown-menu-more .dropdown-item.menu-bg-btn .menu-label{
    font-size:11px!important;
    padding:8px 10px!important;
  }
}

/* =========================================================
   VELENO MOBILE ALIGNMENT + MENU VISIBILITY FINAL PATCH
   Solo CSS centralizzato: mantiene stile e logica, corregge
   drawer mobile, allineamento contenuti/sidebar e dropdown touch.
   ========================================================= */
@media (max-width:767px){
  html,body{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body{padding-top:0!important;}

  body > .container,
  body > .container-fluid,
  .container,
  .container-fluid{
    width:100%!important;
    max-width:100%!important;
    padding-left:10px!important;
    padding-right:10px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }

  .row,
  .row-offcanvas,
  .row-offcanvas-left,
  .row-offcanvas-right,
  .row-offcanvas-left.active,
  .row-offcanvas-right.active{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }

  .row-offcanvas > [class^="col-"],
  .row-offcanvas > [class*=" col-"],
  .veleno-main-chamber,
  #sidebar,
  #sidebar.sidebar-offcanvas{
    float:none!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
    clear:both!important;
  }

  .veleno-main-chamber{
    padding:12px!important;
    overflow:hidden!important;
  }
  #sidebar,
  #sidebar.sidebar-offcanvas{
    margin-top:14px!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  .navbar-necro-apocalypse{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    z-index:10000!important;
  }
  .navbar-necro-apocalypse .navbar-header{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }

  /* Override di tutti i vecchi fix contrastanti: il menu è un drawer laterale,
     chiuso ma renderizzato, così Bootstrap può aprirlo correttamente. */
  .navbar-necro-apocalypse #navbar.navbar-collapse,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapse{
    display:block!important;
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(88vw,370px)!important;
    max-width:100vw!important;
    height:100vh!important;
    max-height:100vh!important;
    margin:0!important;
    padding:76px 13px 24px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    background:linear-gradient(180deg,rgba(17,7,10,.985),rgba(0,0,0,.985))!important;
    border-left:1px solid rgba(255,36,76,.38)!important;
    box-shadow:-22px 0 45px rgba(0,0,0,.78),-4px 0 24px rgba(179,18,43,.24)!important;
    transform:translateX(106%)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:transform .26s cubic-bezier(.2,.78,.25,1),opacity .18s ease,visibility .18s ease!important;
    z-index:10001!important;
  }
  .navbar-necro-apocalypse #navbar.navbar-collapse.in,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapse.in,
  .navbar-necro-apocalypse #navbar.navbar-collapse.show,
  .navbar-necro-apocalypse.veleno-menu-open #navbar.navbar-collapse{
    transform:translateX(0)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .navbar-necro-apocalypse .veleno-primary-menu,
  .navbar-necro-apocalypse .veleno-auth-menu,
  .navbar-necro-apocalypse .navbar-nav,
  .navbar-necro-apocalypse .navbar-nav>li{
    float:none!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-menu>li>a.menu-bg-btn,
  .navbar-necro-apocalypse .dropdown-item.menu-bg-btn{
    width:100%!important;
    max-width:100%!important;
    margin:7px 0!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
  }
  .navbar-necro-apocalypse .dropdown-menu,
  .navbar-necro-apocalypse .dropdown-menu-more,
  .navbar-necro-apocalypse .dropdown-menu-auth-cards,
  .navbar-necro-apocalypse #login-form.dropdown-menu{
    position:static!important;
    float:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:6px 0 10px!important;
    padding:8px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse .dropdown-menu{display:none!important;}
  .navbar-necro-apocalypse .open > .dropdown-menu,
  .navbar-necro-apocalypse .dropdown.open > .dropdown-menu,
  .navbar-necro-apocalypse .veleno-nested-submenu.open > .dropdown-menu{
    display:block!important;
  }
}
/* =========================================================
   VELENO MENU VISIBILITY PATCH v4.2
   Correzione reale: nessun overlay/patina sopra i pulsanti del menu alto.
   Le immagini restano come sfondo, ma il testo e il bottone sono sempre sopra.
   ========================================================= */

.navbar-necro-apocalypse,
.navbar-default.navbar-necro-apocalypse,
.navbar.navbar-necro-apocalypse{
  position:relative!important;
  z-index:2147483000!important;
  overflow:visible!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
  background:linear-gradient(180deg,rgba(8,6,6,.98),rgba(0,0,0,.96))!important;
  box-shadow:0 10px 24px rgba(0,0,0,.82), inset 0 -1px 0 rgba(220,190,120,.22)!important;
}

/* Disattiva la colata/maschera che attraversava la parte superiore dei bottoni */
.navbar-necro-apocalypse::before,
.navbar-necro-apocalypse::after,
.navbar-default.navbar-necro-apocalypse::before,
.navbar-default.navbar-necro-apocalypse::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.navbar-necro-apocalypse .navbar-collapse,
.navbar-necro-apocalypse .navbar-nav,
.navbar-necro-apocalypse .navbar-nav>li,
.navbar-necro-apocalypse .veleno-primary-menu{
  position:relative!important;
  z-index:2147483001!important;
  overflow:visible!important;
}

/* Pulsanti principali: immagini visibili ma senza layer scuro sopra */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
.navbar-default .navbar-nav>li>a.menu-bg-btn{
  position:relative!important;
  z-index:2147483002!important;
  isolation:isolate!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:118px!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  padding:0!important;
  margin:5px 4px!important;
  border-radius:12px!important;
  border:1px solid rgba(232,208,148,.62)!important;
  background-color:#080808!important;
  background-size:cover!important;
  background-position:center 44%!important;
  background-repeat:no-repeat!important;
  box-shadow:inset 0 0 0 1px rgba(255,245,205,.14),0 6px 15px rgba(0,0,0,.58)!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
  clip-path:none!important;
  mask:none!important;
  -webkit-mask:none!important;
}

/* Questa è la parte fondamentale: nessun ::before/::after sopra o sotto al testo */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn::before,
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn::after,
.navbar-default .navbar-nav>li>a.menu-bg-btn::before,
.navbar-default .navbar-nav>li>a.menu-bg-btn::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  background:none!important;
  filter:none!important;
  pointer-events:none!important;
}

/* Etichetta sempre nitida, con fondino dedicato e non oscurato */
.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-label,
.navbar-default .navbar-nav>li>a.menu-bg-btn .menu-label{
  position:relative!important;
  z-index:2147483003!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:calc(100% - 14px)!important;
  min-height:24px!important;
  padding:5px 10px!important;
  margin:0!important;
  border-radius:7px!important;
  background:rgba(0,0,0,.82)!important;
  color:#fff4d8!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 2px #000,0 0 8px rgba(255,220,150,.55)!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}

.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .caret,
.navbar-default .navbar-nav>li>a.menu-bg-btn .caret{
  position:absolute!important;
  right:9px!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  z-index:2147483004!important;
  color:#fff4d8!important;
  opacity:1!important;
  filter:drop-shadow(0 1px 2px #000)!important;
}

.navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn:hover,
.navbar-necro-apocalypse .navbar-nav>li.open>a.menu-bg-btn,
.navbar-default .navbar-nav>li>a.menu-bg-btn:hover,
.navbar-default .navbar-nav>li.open>a.menu-bg-btn{
  transform:translateY(-1px)!important;
  border-color:rgba(255,230,165,.9)!important;
  box-shadow:inset 0 0 0 1px rgba(255,245,205,.2),0 8px 20px rgba(0,0,0,.66),0 0 18px rgba(150,20,40,.24)!important;
}

/* Qualsiasi effetto cinema globale deve stare sotto alla navigazione */
.veleno-cinema-overlay,
.veleno-film-grain,
.veleno-fog-layer,
.veleno-vignette,
.cinema-overlay,
.film-grain,
.fog-layer,
body::before,
body::after{
  pointer-events:none!important;
}

@media (max-width:767px){
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn,
  .navbar-default .navbar-nav>li>a.menu-bg-btn{
    width:calc(100% - 18px)!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:7px 9px!important;
  }
  .navbar-necro-apocalypse .navbar-nav>li>a.menu-bg-btn .menu-label,
  .navbar-default .navbar-nav>li>a.menu-bg-btn .menu-label{
    font-size:12px!important;
  }
}
   VELENO v4.3 — HARD MENU FIX
   Fix reale per lo screen: nessun layer, blur o letterbox può stare sopra
   ai pulsanti del menu. La cinematografia parte sotto la navbar.
   ========================================================= */

/* 1) L'overlay cinematografico non deve mai attraversare la barra menu. */
body.veleno-cinema-v3 #veleno-cinema-overlay,
body.veleno-cinema-v4 #veleno-cinema-overlay,
#veleno-cinema-overlay{
  top:82px!important;
  bottom:0!important;
  height:auto!important;
  z-index:0!important;
  opacity:.28!important;
  pointer-events:none!important;
}
body.veleno-cinema-v3 #veleno-cinema-overlay .vco-top,
body.veleno-cinema-v4 #veleno-cinema-overlay .vco-top,
#veleno-cinema-overlay .vco-top{
  display:none!important;
  opacity:0!important;
  height:0!important;
}

/* 2) Annulla il vecchio selettore troppo aggressivo [class*="nav"]
      che scuriva/blurava anche ul.nav e navbar-nav. */
body.veleno-cinema-v3 .navbar-necro-apocalypse .nav,
body.veleno-cinema-v3 .navbar-necro-apocalypse .navbar-nav,
body.veleno-cinema-v3 .navbar-necro-apocalypse .navbar-collapse,
body.veleno-cinema-v3 .navbar-necro-apocalypse .container,
body.veleno-cinema-v3 .navbar-necro-apocalypse .container-fluid,
body.veleno-cinema-v3 .navbar-necro-apocalypse .veleno-primary-menu,
body.veleno-cinema-v3 .navbar-necro-apocalypse .veleno-auth-menu,
body.veleno-cinema-v4 .navbar-necro-apocalypse .nav,
body.veleno-cinema-v4 .navbar-necro-apocalypse .navbar-nav,
body.veleno-cinema-v4 .navbar-necro-apocalypse .navbar-collapse,
body.veleno-cinema-v4 .navbar-necro-apocalypse .container,
body.veleno-cinema-v4 .navbar-necro-apocalypse .container-fluid,
body.veleno-cinema-v4 .navbar-necro-apocalypse .veleno-primary-menu,
body.veleno-cinema-v4 .navbar-necro-apocalypse .veleno-auth-menu{
  background:transparent!important;
  background-image:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  filter:none!important;
  opacity:1!important;
  box-shadow:none!important;
}

/* 3) La navbar ha solo un fondale leggero, senza blur sopra ai bottoni. */
body.veleno-cinema-v3 .navbar-necro-apocalypse,
body.veleno-cinema-v4 .navbar-necro-apocalypse,
.navbar-necro-apocalypse{
  position:relative!important;
  z-index:2147483640!important;
  isolation:isolate!important;
  background:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.88))!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  filter:none!important;
  overflow:visible!important;
}

/* 4) Reset completo del bottone: niente pseudo-layer interni oscuranti. */
body.veleno-cinema-v3 .navbar-necro-apocalypse a.menu-bg-btn,
body.veleno-cinema-v4 .navbar-necro-apocalypse a.menu-bg-btn,
.navbar-necro-apocalypse a.menu-bg-btn{
  position:relative!important;
  z-index:2147483641!important;
  isolation:isolate!important;
  overflow:hidden!important;
  opacity:1!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background-blend-mode:normal!important;
  background-color:#090606!important;
  border:1px solid rgba(236,211,155,.72)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 5px 13px rgba(0,0,0,.65)!important;
}
body.veleno-cinema-v3 .navbar-necro-apocalypse a.menu-bg-btn::before,
body.veleno-cinema-v3 .navbar-necro-apocalypse a.menu-bg-btn::after,
body.veleno-cinema-v4 .navbar-necro-apocalypse a.menu-bg-btn::before,
body.veleno-cinema-v4 .navbar-necro-apocalypse a.menu-bg-btn::after,
.navbar-necro-apocalypse a.menu-bg-btn::before,
.navbar-necro-apocalypse a.menu-bg-btn::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  background:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* 5) Testo sempre leggibile, senza essere dentro layer blur. */
body.veleno-cinema-v3 .navbar-necro-apocalypse a.menu-bg-btn .menu-label,
body.veleno-cinema-v4 .navbar-necro-apocalypse a.menu-bg-btn .menu-label,
.navbar-necro-apocalypse a.menu-bg-btn .menu-label{
  position:relative!important;
  z-index:2147483642!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff7df!important;
  background:rgba(0,0,0,.88)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:7px!important;
  padding:5px 10px!important;
  opacity:1!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  text-shadow:0 1px 2px #000,0 0 6px rgba(255,235,180,.55)!important;
}
body.veleno-cinema-v3 .navbar-necro-apocalypse a.menu-bg-btn .menu-horror-icon,
body.veleno-cinema-v4 .navbar-necro-apocalypse a.menu-bg-btn .menu-horror-icon,
.navbar-necro-apocalypse a.menu-bg-btn .menu-horror-icon{
  display:none!important;
}

@media(max-width:767px){
  body.veleno-cinema-v3 #veleno-cinema-overlay,
  body.veleno-cinema-v4 #veleno-cinema-overlay,
  #veleno-cinema-overlay{top:64px!important;}
}

/* =========================================================
   VELENO CINEMA MACABRO v14
   One-line menu + working More dropdown
   - primary menu and auth menu stay on the same desktop row
   - dropdowns are allowed to escape the cinema stage
   - mobile keeps proportions with horizontal scroll instead of breaking links
   ========================================================= */
body.veleno-cinema-v11 .veleno-cinema-stage,
body.veleno-cinema-v11 .veleno-cinema-poster,
body.veleno-cinema-v11 .veleno-cinema-copy,
body.veleno-cinema-v11 .veleno-cinema-menu-row,
.veleno-cinema-stage,
.veleno-cinema-poster,
.veleno-cinema-copy,
.veleno-cinema-menu-row{
  overflow: visible !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse,
body.veleno-cinema-v11 .navbar-necro-apocalypse .container,
body.veleno-cinema-v11 .navbar-necro-apocalypse .container-fluid,
body.veleno-cinema-v11 .navbar-necro-apocalypse .navbar-collapse,
body.veleno-cinema-v11 #navbar{
  overflow: visible !important;
}

body.veleno-cinema-v11 .veleno-cinema-menu-row,
.veleno-cinema-menu-row{
  width: min(1500px, 96vw) !important;
  margin: 18px auto 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(10px, 1.1vw, 22px) !important;
  position: relative !important;
  z-index: 100000 !important;
  min-height: 82px !important;
}

body.veleno-cinema-v11 .veleno-primary-menu,
body.veleno-cinema-v11 .veleno-auth-menu,
.veleno-primary-menu,
.veleno-auth-menu{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: clamp(8px, .9vw, 16px) !important;
  position: relative !important;
  z-index: 100001 !important;
}

body.veleno-cinema-v11 .veleno-cinema-menu-row > ul,
.veleno-cinema-menu-row > ul{
  flex: 0 0 auto !important;
}

body.veleno-cinema-v11 .veleno-primary-menu > li,
body.veleno-cinema-v11 .veleno-auth-menu > li,
.veleno-primary-menu > li,
.veleno-auth-menu > li{
  float: none !important;
  display: block !important;
  position: relative !important;
  flex: 0 0 auto !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
body.veleno-cinema-v11 .navbar-default .navbar-nav > li > a.menu-bg-btn,
.veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn{
  width: clamp(104px, 7.1vw, 128px) !important;
  min-width: clamp(104px, 7.1vw, 128px) !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}

body.veleno-cinema-v11 .veleno-auth-menu > li > a.menu-bg-btn,
.veleno-cinema-menu-row .veleno-auth-menu > li > a.menu-bg-btn{
  width: clamp(112px, 7vw, 132px) !important;
  min-width: clamp(112px, 7vw, 132px) !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn .menu-label,
.veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn .menu-label{
  font-size: clamp(10px, .62vw, 12px) !important;
  line-height: 1.05 !important;
  letter-spacing: .08em !important;
}

/* Dropdowns must be above the hero and not clipped by the cinema card. */
body.veleno-cinema-v11 .navbar-necro-apocalypse .dropdown-menu,
body.veleno-cinema-v11 .navbar-default .dropdown-menu,
.veleno-cinema-menu-row .dropdown-menu{
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  z-index: 2147483600 !important;
  display: none;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  min-width: 260px !important;
  max-width: min(92vw, 440px) !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse li.open > .dropdown-menu,
body.veleno-cinema-v11 .navbar-default li.open > .dropdown-menu,
body.veleno-cinema-v11 .navbar-necro-apocalypse li.dropdown:hover > .dropdown-menu,
body.veleno-cinema-v11 .navbar-default li.dropdown:hover > .dropdown-menu,
.veleno-cinema-menu-row li.open > .dropdown-menu,
.veleno-cinema-menu-row li.dropdown:hover > .dropdown-menu{
  display: block !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse .dropdown-menu > li,
body.veleno-cinema-v11 .navbar-default .dropdown-menu > li,
.veleno-cinema-menu-row .dropdown-menu > li{
  float: none !important;
  display: block !important;
  width: 100% !important;
}

body.veleno-cinema-v11 .navbar-necro-apocalypse .dropdown-menu > li > a,
body.veleno-cinema-v11 .navbar-default .dropdown-menu > li > a,
.veleno-cinema-menu-row .dropdown-menu > li > a{
  width: 100% !important;
  min-width: 100% !important;
  height: 58px !important;
  min-height: 58px !important;
}

/* Keep login dropdown usable and not centered like cinematic card grid. */
body.veleno-cinema-v11 #login-form,
.veleno-cinema-menu-row #login-form{
  min-width: 280px !important;
  padding: 15px !important;
  background: rgba(0,0,0,.96) !important;
  border: 1px solid var(--veleno-cinema-accent, #00ff99) !important;
}

@media (min-width: 992px){
  body.veleno-cinema-v11 .veleno-cinema-stage,
  .veleno-cinema-stage{
    padding-bottom: 22px !important;
  }
  body.veleno-cinema-v11 .veleno-cinema-menu-row,
  .veleno-cinema-menu-row{
    transform: translateY(0) !important;
  }
}

@media (max-width: 991px){
  body.veleno-cinema-v11 .veleno-cinema-menu-row,
  .veleno-cinema-menu-row{
    width: 96vw !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 4px 8px 16px !important;
    gap: 12px !important;
  }
  body.veleno-cinema-v11 .veleno-primary-menu,
  body.veleno-cinema-v11 .veleno-auth-menu,
  .veleno-primary-menu,
  .veleno-auth-menu{
    flex-wrap: nowrap !important;
  }
  body.veleno-cinema-v11 .navbar-necro-apocalypse .navbar-nav > li > a.menu-bg-btn,
  .veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn{
    width: 108px !important;
    min-width: 108px !important;
    height: 54px !important;
    min-height: 54px !important;
  }
  body.veleno-cinema-v11 .navbar-necro-apocalypse .dropdown-menu,
  .veleno-cinema-menu-row .dropdown-menu{
    position: fixed !important;
    top: auto !important;
    left: 50% !important;
    bottom: 18px !important;
    transform: translateX(-50%) !important;
    max-height: 62vh !important;
    overflow-y: auto !important;
  }
}


/* =========================================================
   VELENO CINEMA MACABRO v15
   Real dropdown portal fix: More and Log In open outside the
   compact cinema area, so they are never clipped or hidden.
   ========================================================= */
body > .veleno-dropdown-portal,
body > ul.veleno-dropdown-portal,
body > .dropdown-menu.veleno-dropdown-portal{
  position:fixed!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:2147483647!important;
  pointer-events:auto!important;
  float:none!important;
  transform:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  min-width:280px!important;
  max-width:calc(100vw - 24px)!important;
  padding:10px!important;
  background:rgba(0,0,0,.985)!important;
  border:1px solid var(--veleno-cinema-accent,#00ff99)!important;
  border-radius:12px!important;
  box-shadow:0 18px 60px rgba(0,0,0,.95),0 0 28px color-mix(in srgb,var(--veleno-cinema-accent,#00ff99) 35%,transparent)!important;
  clip:auto!important;
  clip-path:none!important;
  contain:none!important;
}
body > .veleno-dropdown-portal li,
body > .veleno-dropdown-portal > li{
  display:block!important;
  float:none!important;
  width:100%!important;
  min-width:0!important;
  position:relative!important;
}
body > .veleno-dropdown-portal a,
body > .veleno-dropdown-portal > li > a,
body > .veleno-dropdown-portal .menu-bg-btn{
  display:flex!important;
  width:100%!important;
  min-width:100%!important;
  height:54px!important;
  min-height:54px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 8px 0!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
body > .veleno-dropdown-portal form,
body > .veleno-dropdown-portal #login-form{
  display:block!important;
  width:100%!important;
  min-width:280px!important;
  max-width:100%!important;
  margin:0!important;
  padding:14px!important;
  background:rgba(0,0,0,.96)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:10px!important;
}
body > .veleno-dropdown-portal input,
body > .veleno-dropdown-portal button,
body > .veleno-dropdown-portal .btn{
  max-width:100%!important;
}


/* =========================================================
   VELENO CINEMA MACABRO v16 - REAL DROPDOWN FIX
   The dropdown is moved to #veleno-dropdown-portal in <body>.
   This avoids every overflow/height clipping issue from the cinema stage.
   ========================================================= */
#veleno-dropdown-portal,
body > #veleno-dropdown-portal.veleno-dropdown-portal{
  position:fixed!important;
  display:none;
  z-index:2147483647!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:12px!important;
  background:rgba(0,0,0,.985)!important;
  border:1px solid var(--veleno-cinema-accent,#00ff99)!important;
  border-radius:14px!important;
  box-shadow:0 18px 70px rgba(0,0,0,.98),0 0 30px color-mix(in srgb,var(--veleno-cinema-accent,#00ff99) 38%,transparent)!important;
  clip:auto!important;
  clip-path:none!important;
  contain:none!important;
}
#veleno-dropdown-portal > .dropdown-menu,
#veleno-dropdown-portal > #login-form{
  display:block!important;
  position:static!important;
  float:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
}
#veleno-dropdown-portal li{display:block!important;float:none!important;width:100%!important;position:relative!important;}
#veleno-dropdown-portal a.menu-bg-btn,
#veleno-dropdown-portal .dropdown-menu > li > a,
#veleno-dropdown-portal .dropdown-item{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  height:54px!important;
  min-height:54px!important;
  margin:0 0 8px 0!important;
  white-space:normal!important;
}
#veleno-dropdown-portal input.form-control{width:100%!important;margin-bottom:10px!important;}
#veleno-dropdown-portal .btn{width:100%!important;}
#veleno-dropdown-portal .dropdown-submenu > .dropdown-menu,
#veleno-dropdown-portal .veleno-nested-submenu > .dropdown-menu{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:8px 0 10px!important;
  padding-left:10px!important;
  background:rgba(255,255,255,.035)!important;
  border-left:1px solid rgba(255,255,255,.14)!important;
}
.veleno-cinema-menu-row .dropdown-menu{display:none!important;}
.veleno-cinema-menu-row li.open > .dropdown-menu{display:none!important;}
@media(max-width:767px){
  #veleno-dropdown-portal{left:12px!important;right:12px!important;width:auto!important;max-height:70vh!important;}
}

/* =========================================================
   VELENO CINEMA MACABRO v19 - MOBILE COLLAPSE FIX
   Fixes the hamburger menu on phones: the opened menu becomes
   a true full-screen panel instead of a narrow/clipped column.
   ========================================================= */
@media (max-width: 767px){
  html, body{
    max-width:100vw!important;
    overflow-x:hidden!important;
  }

  .navbar-necro-apocalypse,
  .navbar-necro-apocalypse .container,
  .navbar-necro-apocalypse .container-fluid,
  .navbar-necro-apocalypse .navbar-header{
    max-width:100vw!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-header{
    position:relative!important;
    z-index:2147483000!important;
    min-height:56px!important;
    background:rgba(0,0,0,.96)!important;
    border-bottom:1px solid rgba(255,0,45,.45)!important;
  }

  .navbar-necro-apocalypse .navbar-toggle{
    position:relative!important;
    z-index:2147483640!important;
    margin-right:12px!important;
    border:1px solid var(--veleno-cinema-accent,#00ff99)!important;
    background:rgba(0,0,0,.88)!important;
    box-shadow:0 0 16px rgba(0,255,153,.25)!important;
  }

  .navbar-necro-apocalypse .navbar-collapse,
  .navbar-necro-apocalypse .navbar-collapse.collapsing,
  .navbar-necro-apocalypse .navbar-collapse.collapse.in{
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:56px!important;
    bottom:0!important;
    width:100vw!important;
    max-width:100vw!important;
    height:auto!important;
    max-height:calc(100vh - 56px)!important;
    margin:0!important;
    padding:10px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    background:rgba(0,0,0,.985)!important;
    border:0!important;
    border-top:1px solid rgba(255,0,45,.42)!important;
    box-shadow:0 18px 80px rgba(0,0,0,.96)!important;
    z-index:2147482500!important;
    transform:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .navbar-necro-apocalypse .navbar-collapse.collapse:not(.in){
    display:none!important;
  }

  .navbar-necro-apocalypse .navbar-collapse.collapse.in,
  .navbar-necro-apocalypse .navbar-collapse.collapsing{
    display:block!important;
  }

  .navbar-necro-apocalypse .navbar-collapse::before,
  .navbar-necro-apocalypse .navbar-collapse::after,
  .veleno-cinema-stage::before,
  .veleno-cinema-stage::after,
  .veleno-cinema-poster::before,
  .veleno-cinema-poster::after{
    max-width:100%!important;
    pointer-events:none!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-stage{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:8px!important;
    overflow:visible!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-poster{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:14px 10px 12px!important;
    display:block!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-copy{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-kicker{
    font-size:10px!important;
    letter-spacing:.32em!important;
    margin:0 0 6px!important;
    white-space:normal!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-titleline{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0 auto 8px!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-real-skull{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    object-fit:cover!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-title{
    max-width:calc(100vw - 92px)!important;
    font-size:clamp(30px, 11vw, 48px)!important;
    line-height:.82!important;
    letter-spacing:.025em!important;
    margin:0!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-trailer{
    width:100%!important;
    max-width:100%!important;
    margin:8px auto 12px!important;
    padding:0 4px!important;
    font-size:clamp(16px, 4.8vw, 22px)!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    text-align:center!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-controls{
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin:0 auto 12px!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-controls label,
  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-controls select{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-tags{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0 auto 12px!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-tags span{
    max-width:100%!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.15!important;
  }

  /* The hamburger panel should use a clean mobile grid, not the desktop one-row strip. */
  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-menu-row{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:4px auto 0!important;
    padding:0!important;
    display:block!important;
    overflow:visible!important;
    transform:none!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-primary-menu,
  .navbar-necro-apocalypse .navbar-collapse .veleno-auth-menu{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    float:none!important;
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:10px!important;
    margin:0 0 10px!important;
    padding:0!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .veleno-primary-menu > li,
  .navbar-necro-apocalypse .navbar-collapse .veleno-auth-menu > li{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    float:none!important;
    display:block!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .navbar-nav > li > a.menu-bg-btn,
  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0 6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse .navbar-nav > li > a.menu-bg-btn .menu-label{
    font-size:10px!important;
    line-height:1.05!important;
    white-space:normal!important;
    text-align:center!important;
  }

  /* Keep Bootstrap dropdowns usable inside the mobile panel if the portal JS is not active. */
  .navbar-necro-apocalypse .navbar-collapse .dropdown-menu{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    float:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    max-height:none!important;
    margin:8px 0 0!important;
    padding:8px!important;
    overflow:visible!important;
    background:rgba(0,0,0,.96)!important;
    border:1px solid var(--veleno-cinema-accent,#00ff99)!important;
    border-radius:12px!important;
    box-shadow:0 12px 35px rgba(0,0,0,.85)!important;
  }

  .navbar-necro-apocalypse .navbar-collapse li.open > .dropdown-menu{
    display:block!important;
  }

  .navbar-necro-apocalypse .navbar-collapse #login-form{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .navbar-necro-apocalypse .navbar-collapse #login-form input,
  .navbar-necro-apocalypse .navbar-collapse #login-form .btn{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  #veleno-dropdown-portal{
    left:10px!important;
    right:10px!important;
    top:68px!important;
    bottom:auto!important;
    width:auto!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100vh - 86px)!important;
  }
}

@media (max-width: 380px){
  .navbar-necro-apocalypse .navbar-collapse .veleno-primary-menu,
  .navbar-necro-apocalypse .navbar-collapse .veleno-auth-menu{
    grid-template-columns:1fr!important;
  }
  .navbar-necro-apocalypse .navbar-collapse .veleno-cinema-title{
    font-size:clamp(28px, 13vw, 42px)!important;
  }
}
   VELENO v20 — MOBILE CINEMA MENU RESET
   Hard reset for the hamburger view: full-width, compact, no left sidebar overlap,
   no clipped film/card/dropdown content.
   ========================================================= */
@media (max-width: 767px){
  html, body{
    max-width:100vw!important;
    overflow-x:hidden!important;
  }
  body.veleno-mobile-menu-open{
    overflow:hidden!important;
    touch-action:none!important;
  }
  body.veleno-mobile-menu-open::before,
  body.veleno-mobile-menu-open::after{
    display:none!important;
    content:none!important;
  }
  body.veleno-mobile-menu-open .veleno-sidebar,
  body.veleno-mobile-menu-open #sidebar,
  body.veleno-mobile-menu-open .sidebar,
  body.veleno-mobile-menu-open aside{
    z-index:1!important;
    pointer-events:none!important;
  }

  .navbar-necro-apocalypse,
  .navbar-necro-apocalypse .container,
  .navbar-necro-apocalypse .container-fluid{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    contain:none!important;
  }

  .navbar-necro-apocalypse #navbar.navbar-collapse,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapse,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapsing{
    position:fixed!important;
    inset:0!important;
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:100vw!important;
    max-height:100dvh!important;
    min-width:0!important;
    margin:0!important;
    padding:12px 10px 18px!important;
    transform:none!important;
    float:none!important;
    clear:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483000!important;
    background:radial-gradient(circle at 50% 0%, rgba(90,0,18,.28), transparent 34%), linear-gradient(180deg, rgba(1,1,2,.995), rgba(8,0,3,.995))!important;
    border:0!important;
    box-shadow:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  .navbar-necro-apocalypse #navbar.navbar-collapse.in,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapse.in,
  .navbar-necro-apocalypse #navbar.navbar-collapse.show,
  .navbar-necro-apocalypse.veleno-menu-open #navbar.navbar-collapse{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  .veleno-mobile-close{
    display:flex!important;
    position:sticky!important;
    top:0!important;
    margin:0 0 10px auto!important;
    width:44px!important;
    height:38px!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2147483003!important;
    background:rgba(0,0,0,.92)!important;
    border:1px solid rgba(255,255,255,.28)!important;
    border-radius:10px!important;
    color:#fff!important;
    font:900 22px/1 monospace!important;
    text-shadow:0 0 10px #000!important;
  }

  .navbar-necro-apocalypse #navbar .veleno-cinema-stage,
  .navbar-necro-apocalypse #navbar #veleno-cinema-stage.veleno-cinema-stage{
    display:block!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:0!important;
    border:0!important;
    overflow:visible!important;
    transform:none!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .navbar-necro-apocalypse #navbar .veleno-cinema-poster{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:14px 10px 16px!important;
    border-radius:16px!important;
    overflow:visible!important;
    background:rgba(0,0,0,.74)!important;
    border:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 14px 45px rgba(0,0,0,.7)!important;
  }

  .navbar-necro-apocalypse #navbar .veleno-cinema-copy{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-kicker{
    font-size:10px!important;
    letter-spacing:4px!important;
    margin:0 0 8px!important;
    white-space:normal!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-titleline{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
    margin:0!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-real-skull{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    object-fit:cover!important;
    flex:0 0 auto!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-title{
    max-width:calc(100vw - 80px)!important;
    margin:0!important;
    font-size:clamp(30px, 11vw, 52px)!important;
    line-height:.86!important;
    letter-spacing:-1px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:left!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-trailer{
    width:100%!important;
    max-width:100%!important;
    margin:10px 0 10px!important;
    font-size:clamp(16px, 4.6vw, 22px)!important;
    line-height:1.14!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-controls{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-controls label,
  .navbar-necro-apocalypse #navbar .veleno-cinema-controls select{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-controls select{
    height:44px!important;
    font-size:12px!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-tags{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    margin:10px 0 0!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-cinema-tags span{
    max-width:100%!important;
    font-size:10px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .navbar-necro-apocalypse #navbar .veleno-cinema-menu-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:14px 0 0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-primary-menu,
  .navbar-necro-apocalypse #navbar .veleno-auth-menu{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    float:none!important;
    border:0!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-auth-menu{
    border-top:1px solid rgba(255,255,255,.14)!important;
    padding-top:10px!important;
  }
  .navbar-necro-apocalypse #navbar .veleno-primary-menu > li,
  .navbar-necro-apocalypse #navbar .veleno-auth-menu > li{
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    overflow:visible!important;
  }
  .navbar-necro-apocalypse #navbar .navbar-nav > li > a.menu-bg-btn,
  .navbar-necro-apocalypse #navbar .veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 8px!important;
    justify-content:center!important;
    align-items:center!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .navbar-necro-apocalypse #navbar .navbar-nav > li > a.menu-bg-btn .menu-label{
    font-size:11px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .navbar-necro-apocalypse #navbar .dropdown-menu,
  .navbar-necro-apocalypse #navbar #login-form.dropdown-menu{
    position:static!important;
    display:none!important;
    float:none!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    max-height:none!important;
    margin:8px 0 0!important;
    padding:10px!important;
    overflow:visible!important;
    background:rgba(0,0,0,.96)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    border-radius:12px!important;
    box-shadow:none!important;
  }
  .navbar-necro-apocalypse #navbar li.open > .dropdown-menu,
  .navbar-necro-apocalypse #navbar li.veleno-dropdown-open > .dropdown-menu{
    display:block!important;
    grid-column:1 / -1!important;
  }
  .navbar-necro-apocalypse #navbar #login-form input,
  .navbar-necro-apocalypse #navbar #login-form .btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}

/* =========================================================
   VELENO v23 — DESKTOP CLEAN BAR + FIXED CINEMA MENU ROW
   1) Removes the useless top-left close/X strip on desktop.
   2) Keeps Forum/Files/Doors/etc. on the same vertical row for every Film.
   Mobile keeps the v20 clean hamburger layout.
   ========================================================= */
.veleno-mobile-close{display:none!important;}

@media (min-width:768px){
  /* The desktop cinema header does not need Bootstrap's tiny brand/hamburger strip. */
  .navbar-necro-apocalypse .navbar-header,
  .navbar-necro-apocalypse .navbar-toggle,
  .navbar-necro-apocalypse .veleno-mobile-close{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }

  .navbar-necro-apocalypse,
  .navbar-necro-apocalypse .container,
  .navbar-necro-apocalypse .container-fluid,
  .navbar-necro-apocalypse #navbar.navbar-collapse{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .navbar-necro-apocalypse #navbar.navbar-collapse,
  .navbar-necro-apocalypse #navbar.navbar-collapse.collapse{
    height:auto!important;
    max-height:none!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
  }

  .veleno-cinema-stage{
    width:min(1780px,96vw)!important;
    max-width:96vw!important;
    min-height:430px!important;
    height:430px!important;
    margin:10px auto 0!important;
    padding:14px 18px!important;
    display:flex!important;
    align-items:stretch!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  .veleno-cinema-poster{
    width:100%!important;
    max-width:100%!important;
    height:100%!important;
    min-height:0!important;
    display:grid!important;
    grid-template-rows:260px 82px!important;
    row-gap:18px!important;
    align-content:center!important;
    justify-items:center!important;
    margin:0!important;
    padding:22px 28px 20px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  .veleno-cinema-copy{
    width:min(980px,86vw)!important;
    height:260px!important;
    max-height:260px!important;
    min-height:260px!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
    text-align:center!important;
  }

  .veleno-cinema-kicker{
    flex:0 0 auto!important;
    margin:0 0 6px!important;
    line-height:1!important;
  }

  .veleno-cinema-titleline{
    width:100%!important;
    height:104px!important;
    min-height:104px!important;
    max-height:104px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:14px!important;
    margin:0!important;
    overflow:visible!important;
  }

  .veleno-cinema-real-skull{
    flex:0 0 68px!important;
    width:68px!important;
    height:68px!important;
    object-fit:cover!important;
  }

  .veleno-cinema-title{
    max-width:min(820px,70vw)!important;
    margin:0!important;
    font-size:clamp(58px,5.2vw,96px)!important;
    line-height:.78!important;
    letter-spacing:.01em!important;
    white-space:normal!important;
    text-wrap:balance!important;
    overflow:visible!important;
  }

  .veleno-cinema-trailer{
    flex:0 0 34px!important;
    height:34px!important;
    max-height:34px!important;
    margin:8px auto 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }

  .veleno-cinema-controls{
    flex:0 0 auto!important;
    margin:0 auto 8px!important;
    width:min(760px,82vw)!important;
    display:grid!important;
    grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto!important;
    align-items:end!important;
    gap:14px!important;
  }

  .veleno-cinema-tags{
    flex:0 0 auto!important;
    margin:0 auto!important;
    min-height:26px!important;
    max-height:30px!important;
    overflow:hidden!important;
  }

  .veleno-cinema-menu-row{
    grid-row:2!important;
    align-self:start!important;
    width:min(1500px,92vw)!important;
    min-height:70px!important;
    height:70px!important;
    max-height:70px!important;
    margin:0 auto!important;
    padding:0!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:clamp(10px,1vw,20px)!important;
    overflow:visible!important;
    transform:none!important;
  }

  .veleno-cinema-menu-row .veleno-primary-menu,
  .veleno-cinema-menu-row .veleno-auth-menu{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:clamp(8px,.85vw,16px)!important;
    margin:0!important;
    padding:0!important;
    height:70px!important;
  }

  .veleno-cinema-menu-row .veleno-primary-menu > li,
  .veleno-cinema-menu-row .veleno-auth-menu > li{
    margin:0!important;
    padding:0!important;
  }

  .veleno-cinema-menu-row .navbar-nav > li > a.menu-bg-btn{
    height:56px!important;
    min-height:56px!important;
    width:clamp(108px,6.7vw,130px)!important;
    min-width:clamp(108px,6.7vw,130px)!important;
  }

  .veleno-cinema-menu-row .veleno-auth-menu > li > a.menu-bg-btn{
    width:clamp(114px,6.8vw,136px)!important;
    min-width:clamp(114px,6.8vw,136px)!important;
  }
}

@media (max-width:767px){
  .veleno-mobile-close{display:flex!important;}
}

/* ============================================================
   VELENO v24 — scene photography across the whole site
   Extends the selected Film / Universe to body, home background,
   sidebars and linked pages without clipping dropdowns.
   ============================================================ */
html[data-veleno-cinema-universe],
body.veleno-page-scenography{
  min-height:100%;
  background:#020202 !important;
}
#veleno-page-photo-bg{
  position:fixed !important;
  inset:0 !important;
  z-index:-3 !important;
  pointer-events:none !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  filter:saturate(.92) contrast(1.08) brightness(.78) !important;
  transform:translateZ(0) scale(1.012);
}
body.veleno-page-scenography::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:-2 !important;
  pointer-events:none !important;
  background:
    radial-gradient(ellipse at center, rgba(0,0,0,.05) 0%, rgba(0,0,0,.45) 58%, rgba(0,0,0,.92) 100%),
    linear-gradient(180deg, rgba(0,0,0,.34), rgba(0,0,0,.88)) !important;
}
body.veleno-page-scenography::after{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:-1 !important;
  pointer-events:none !important;
  opacity:.12 !important;
  background-image:url('../horror-assets/static-noise.svg') !important;
  background-size:260px 260px !important;
  mix-blend-mode:screen !important;
}
body.veleno-page-scenography > .container,
body.veleno-page-scenography > .container-fluid{
  position:relative !important;
  z-index:1 !important;
  background:transparent !important;
}
body.veleno-page-scenography .row-offcanvas{
  position:relative !important;
  background:
    linear-gradient(90deg,rgba(0,0,0,.50),rgba(0,0,0,.18),rgba(0,0,0,.50)),
    var(--veleno-page-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
  border-top:1px solid rgba(180,0,36,.36) !important;
  border-bottom:1px solid rgba(180,0,36,.24) !important;
  box-shadow:inset 0 36px 90px rgba(0,0,0,.75), inset 0 -36px 90px rgba(0,0,0,.80) !important;
}
body.veleno-page-scenography .veleno-main-chamber{
  position:relative !important;
  overflow:visible !important;
  background:
    linear-gradient(110deg,rgba(0,0,0,.78),rgba(0,0,0,.34),rgba(0,0,0,.82)),
    var(--veleno-page-panel-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
  border:1px solid rgba(255,255,255,.05) !important;
  box-shadow:0 0 40px rgba(0,0,0,.76), inset 0 0 80px rgba(0,0,0,.72) !important;
  border-radius:10px !important;
  padding-top:18px !important;
  padding-bottom:18px !important;
}
body.veleno-page-scenography .veleno-main-chamber::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,rgba(0,0,0,.16),rgba(0,0,0,.58)) !important;
}
body.veleno-page-scenography .veleno-main-chamber > *{
  position:relative !important;
  z-index:1 !important;
}
body.veleno-page-scenography .veleno-scene-surface{
  background-image:
    linear-gradient(105deg,rgba(0,0,0,.78),rgba(0,0,0,.48),rgba(0,0,0,.82)),
    var(--veleno-page-alt-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
  border-color:rgba(160,18,32,.42) !important;
  box-shadow:inset 0 0 50px rgba(0,0,0,.72),0 0 20px rgba(0,0,0,.45) !important;
}
body.veleno-page-scenography .panel-heading,
body.veleno-page-scenography .modal-header,
body.veleno-page-scenography .table > thead > tr > th{
  background:rgba(0,0,0,.76) !important;
  border-color:rgba(160,18,32,.38) !important;
}
body.veleno-page-scenography table,
body.veleno-page-scenography .table,
body.veleno-page-scenography pre,
body.veleno-page-scenography textarea,
body.veleno-page-scenography input,
body.veleno-page-scenography select{
  background-color:rgba(0,0,0,.68) !important;
  color:#f2eee2 !important;
}
/* Never apply the broad page surfaces to the cinema navbar/dropdowns. */
body.veleno-page-scenography .navbar-necro-apocalypse,
body.veleno-page-scenography .navbar-necro-apocalypse *,
body.veleno-page-scenography .veleno-floating-dropdown,
body.veleno-page-scenography .veleno-floating-dropdown *{
  z-index:auto;
}
body.veleno-page-scenography .navbar-necro-apocalypse,
body.veleno-page-scenography .veleno-floating-dropdown{
  z-index:99999 !important;
}
@media (max-width:767px){
  #veleno-page-photo-bg{
    background-position:center top !important;
    filter:saturate(.88) contrast(1.04) brightness(.68) !important;
  }
  body.veleno-page-scenography .row-offcanvas,
  body.veleno-page-scenography .veleno-main-chamber{
    border-radius:0 !important;
    padding-left:10px !important;
    padding-right:10px !important;
  }
  body.veleno-page-scenography .veleno-scene-surface{
    background-position:center center !important;
  }
}


/* ============================================================
   VELENO v25 — dynamic side/header scenography
   Replaces the old fixed side monsters, skulls and header strips
   with images from the selected Film / Universe.
   ============================================================ */
body.veleno-page-scenography .necro-apocalypse-hero,
body.veleno-page-scenography .necro-ufaults-hero,
body.veleno-page-scenography .necro-ufaults-page:after{
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.78)),
    var(--veleno-page-header-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
body.veleno-page-scenography .navbar.navbar-default,
body.veleno-page-scenography .navbar-fixed-top{
  background-image:
    linear-gradient(180deg,rgba(8,3,3,.96),rgba(0,0,0,.93)),
    var(--veleno-page-header-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
body.veleno-page-scenography .necro-apocalypse-hero:before,
body.veleno-page-scenography .necro-hero-prop.zombie-left,
body.veleno-page-scenography .necro-prop.zombie-left,
body.veleno-page-scenography .necro-ufaults-inner:before{
  background-image:var(--veleno-page-left-bg) !important;
  background-size:cover !important;
  background-position:left bottom !important;
  background-repeat:no-repeat !important;
  opacity:.30 !important;
  mix-blend-mode:screen !important;
  filter:contrast(1.18) saturate(.78) brightness(.70) drop-shadow(0 0 24px rgba(180,0,0,.35)) !important;
}
body.veleno-page-scenography .necro-apocalypse-hero:after,
body.veleno-page-scenography .necro-hero-prop.zombie-right,
body.veleno-page-scenography .necro-prop.zombie-right,
body.veleno-page-scenography .necro-prop.skull,
body.veleno-page-scenography .necro-ufaults-inner:after{
  background-image:var(--veleno-page-right-bg) !important;
  background-size:cover !important;
  background-position:right bottom !important;
  background-repeat:no-repeat !important;
  opacity:.30 !important;
  mix-blend-mode:lighten !important;
  filter:contrast(1.18) saturate(.78) brightness(.72) drop-shadow(0 0 24px rgba(180,0,0,.35)) !important;
}
body.veleno-page-scenography .necro-ufaults-page,
body.veleno-page-scenography .necro-side-card,
body.veleno-page-scenography .necro-side-panel,
body.veleno-page-scenography .wo-panel.necro-nodelist{
  background-image:
    linear-gradient(180deg,rgba(7,0,0,.88),rgba(0,0,0,.94)),
    var(--veleno-page-panel-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
body.veleno-page-scenography .necro-side-card:after,
body.veleno-page-scenography .necro-side-panel:after,
body.veleno-page-scenography .wo-panel.necro-nodelist:after,
body.veleno-page-scenography .necro-side-card .card-body:before,
body.veleno-page-scenography .necro-side-panel .card-body:before,
body.veleno-page-scenography .necro-weather-panel .card-body:before{
  background-image:var(--veleno-page-right-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
  opacity:.24 !important;
}
body.veleno-page-scenography .necro-ufaults-page:before{
  background-image:
    radial-gradient(circle at 50% 15%,rgba(255,255,255,.08),transparent 16%),
    radial-gradient(circle at 18% 35%,rgba(250,0,0,.18),transparent 24%),
    var(--veleno-page-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
@media(max-width:767px){
  body.veleno-page-scenography .necro-apocalypse-hero:before,
  body.veleno-page-scenography .necro-apocalypse-hero:after,
  body.veleno-page-scenography .necro-ufaults-inner:before,
  body.veleno-page-scenography .necro-ufaults-inner:after{
    opacity:.12 !important;
  }
}

/* VELENO v26 — modular photographic scene packs
   Covers the legacy fixed side/header artwork with dynamic set pieces.
   These layers are intentionally click-through and stay behind every UI item. */
body.veleno-wide-photo-scenes{
  background-image:linear-gradient(90deg,rgba(0,0,0,.90),rgba(0,0,0,.30),rgba(0,0,0,.90)),var(--veleno-page-bg)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-attachment:fixed!important;
}
#veleno-page-photo-bg,
#veleno-scene-prop-header,
#veleno-scene-prop-left,
#veleno-scene-prop-right{
  position:fixed!important;
  pointer-events:none!important;
  z-index:0!important;
  display:block!important;
  background-repeat:no-repeat!important;
  filter:contrast(1.05) saturate(.9)!important;
}
#veleno-page-photo-bg{
  inset:0!important;
  background-size:cover!important;
  background-position:center center!important;
  opacity:.72!important;
}
#veleno-scene-prop-header{
  top:0!important;left:0!important;right:0!important;
  height:clamp(110px,15vw,240px)!important;
  background-size:cover!important;
  background-position:center top!important;
  opacity:.80!important;
  mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%);
}
#veleno-scene-prop-left,
#veleno-scene-prop-right{
  top:0!important;bottom:0!important;
  width:clamp(95px,15vw,300px)!important;
  background-size:cover!important;
  opacity:.86!important;
}
#veleno-scene-prop-left{
  left:0!important;
  background-position:left center!important;
  mask-image:linear-gradient(90deg,#000 0%,#000 55%,transparent 100%);
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 55%,transparent 100%);
}
#veleno-scene-prop-right{
  right:0!important;
  background-position:right center!important;
  mask-image:linear-gradient(270deg,#000 0%,#000 55%,transparent 100%);
  -webkit-mask-image:linear-gradient(270deg,#000 0%,#000 55%,transparent 100%);
}
/* Make sure real content stays above the cinematic prop layers. */
body > *:not(#veleno-page-photo-bg):not(#veleno-scene-prop-header):not(#veleno-scene-prop-left):not(#veleno-scene-prop-right),
.navbar-necro-apocalypse,
.veleno-cinema-stage,
.veleno-cinema-menu-row,
.container,
.container-fluid,
#wrap,
main{
  position:relative;
  z-index:2;
}
.veleno-scene-surface{
  background-image:linear-gradient(100deg,rgba(0,0,0,.86),rgba(0,0,0,.62)),var(--veleno-page-panel-bg)!important;
  background-size:cover!important;
  background-position:center center!important;
}
/* Override the old static side/background images that were embedded in previous themes. */
body.veleno-wide-photo-scenes:before,
body.veleno-wide-photo-scenes:after,
.veleno-horror-left,
.veleno-horror-right,
.necro-left,
.necro-right,
.side-skull,
.side-candle,
.side-zombie,
.horror-side,
.horror-border-left,
.horror-border-right{
  background-image:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
@media(max-width:768px){
  #veleno-scene-prop-header{height:84px!important;opacity:.48!important;}
  #veleno-scene-prop-left,#veleno-scene-prop-right{display:none!important;}
  #veleno-page-photo-bg{opacity:.52!important;}
}
