| /* CONTAINER */ |
| diagnostic .half-height { |
| position: relative; |
| height: 50%; |
| } |
| |
| .half-height + .half-height { |
| border-top: 1px solid black; |
| } |
| |
| service-topology, |
| logic-topology { |
| height: 100%; |
| width: 100%; |
| display: block; |
| position: absolute; |
| top: 0; |
| } |
| |
| /* LEGEND */ |
| |
| .legend { |
| fill: #fff; |
| stroke: #ccc; |
| stroke-width: 1px; |
| position: relative; |
| } |
| |
| .legend text { |
| stroke: #000; |
| } |
| |
| .node { |
| cursor: pointer; |
| } |
| |
| .node circle, |
| .node rect{ |
| fill: #fff; |
| stroke: steelblue; |
| stroke-width: 1px; |
| } |
| |
| .node.subscriber circle, |
| .node.internet circle { |
| stroke: #05ffcb; |
| } |
| |
| .node.slice rect { |
| stroke: #b01dff; |
| } |
| |
| .node.instance rect { |
| stroke: #ccc; |
| } |
| |
| .node.instance rect.active { |
| stroke: #ff8b00; |
| } |
| |
| .node rect.slice-detail{ |
| fill: #fff; |
| stroke: steelblue; |
| stroke-width: 3px; |
| } |
| |
| .node text { |
| font: 12px sans-serif; |
| } |
| |
| .link, .device-link { |
| fill: none; |
| stroke: #ccc; |
| stroke-width: 2px; |
| } |
| |
| .link.slice { |
| stroke: rgba(157, 4, 183, 0.29); |
| } |
| .link.instance{ |
| stroke: #ccc; |
| } |
| |
| .link.instance.active{ |
| stroke: rgba(255, 138, 0, 0.65); |
| } |
| |
| .service-details{ |
| width: 200px; |
| position: absolute; |
| top: 20px; |
| right: 20px; |
| } |
| |
| /* when showing the thing */ |
| |
| .animate.ng-hide-remove { |
| animation:0.5s bounceInRight ease; |
| } |
| |
| /* when hiding the picture */ |
| .animate.ng-hide-add { |
| animation:0.5s bounceOutRight ease; |
| } |
| |
| /* ANIMATIONS */ |
| |
| @keyframes bounceInRight { |
| from, 60%, 75%, 90%, to { |
| animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); |
| } |
| |
| from { |
| opacity: 0; |
| transform: translate3d(3000px, 0, 0); |
| } |
| |
| 60% { |
| opacity: 1; |
| transform: translate3d(-25px, 0, 0); |
| } |
| |
| 75% { |
| transform: translate3d(10px, 0, 0); |
| } |
| |
| 90% { |
| transform: translate3d(-5px, 0, 0); |
| } |
| |
| to { |
| transform: none; |
| } |
| } |
| |
| @keyframes bounceInLeft { |
| from, 60%, 75%, 90%, to { |
| animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000); |
| } |
| |
| 0% { |
| opacity: 0; |
| transform: translate3d(-3000px, 0, 0); |
| } |
| |
| 60% { |
| opacity: 1; |
| transform: translate3d(25px, 0, 0); |
| } |
| |
| 75% { |
| transform: translate3d(-10px, 0, 0); |
| } |
| |
| 90% { |
| transform: translate3d(5px, 0, 0); |
| } |
| |
| to { |
| transform: none; |
| } |
| } |