Files
iD/css/app.css
2012-12-18 14:52:35 -05:00

876 lines
16 KiB
CSS

/* Basics
------------------------------------------------------- */
body {
font:normal 12px/20px 'Helvetica Neue', Arial, sans-serif;
margin:0;
padding:0;
color:#222;
/* text-rendering: optimizeLegibility; */
-webkit-font-smoothing: subpixel-antialiased;
}
* {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
h2 {
font-size: 24px;
font-weight: bold;
line-height:40px;
}
h3 {
font-size: 18px;
font-weight: bold;
line-height:30px;
}
h4 {
font-size: 12px;
font-weight: normal;
font-style: italic;
line-height: 20px;
padding-bottom: 10px;
}
:focus {
outline-color: transparent;
outline-style: none;
}
p {
margin:0;
padding:0;
}
em {
font-style: italic;
}
strong {
font-style: bold;
}
a:visited, a {
color: #7092ff;
}
a:hover {
color:#154dff;
}
input[type=text] {
background-color: white;
height:30px;
border:1px solid #ccc;
padding:4px 10px;
margin:0;
}
input[type=text]:focus {
background-color: #ececec;
}
/* tables */
table {
background-color: white;
border-collapse: collapse;
width:100%;
border-spacing:0;
}
table th {
text-align:left;
}
/* UI Lists
------------------------------------------------------- */
ul li { list-style: none;}
ul.toggle-list li a {
font-weight: bold;
padding: 10px;
border-top: 1px solid #CCC;
display:block;
}
ul.toggle-list li a:hover {
background: #ececec;
}
ul.toggle-list .icon {
float: left;
margin-right: 5px;
}
a.selected {
color:#222;
}
ul.link-list li {
float: left;
display: inline-block;
margin-left: 10px;
padding-left: 10px;
border-left: 1px solid white;
}
ul.link-list li:first-child {
border-left: 0;
margin-left: 0;
padding-left: 0;
}
/* Mode-specific styles
------------------------------------------------------- */
#map:hover,
#map.browse:hover {
cursor:url(../img/cursor-grab.png) 9 9, auto;
}
#map:active,
#map.browse:active {
cursor:url(../img/cursor-grabbing.png) 9 9, auto;
}
#map.draw-line:hover,
#map.draw-area:hover,
#map.add-line:hover,
#map.add-area:hover {
cursor:url(../img/cursor-draw.png) 9 9, auto;
}
#map.finish-area:hover {
cursor:url(../img/cursor-draw-finish.png) 9 9, auto;
}
#map.add-point:hover {
cursor:url(../img/cursor-draw-marker.png) 18 18, auto;
}
/* Utility Classes
------------------------------------------------------- */
.fillL { background-color: white;}
.fillL2 { background: #f7f7f7 url(../img/background-pattern-1.png) repeat;}
.fillD {
background-color: #222222;
background-color: rgba(0,0,0,.8);
color: white;
}
.fl { float: left;}
.fr { float: right;}
div.hide,
form.hide {
display:none;
}
.content {
background-color:#fff;
border-radius: 4px;
border: 1px solid #ccc;
}
.pad1 {
padding: 10px;}
/* Buttons */
button {
line-height:20px;
border:1px solid #aaa;
box-shadow: inset 0 0 0px 1px #fff;
color:#222;
background: white;
font-weight:bold;
white-space:nowrap;
font-size:14px;
display: inline-block;
height:40px;
cursor:url(../img/cursor-pointer.png) 9 9, auto;
}
button:hover {
background-color: #ececec;
}
button:active {
box-shadow: inset 0 0 0px 1px #fff, inset 0 0 6px 1px rgba(0,0,0,.35);
cursor:url(../img/cursor-pointing.png) 9 9, auto;
}
button.active:not([disabled]) {
background-color: #ececec;
box-shadow: inset 0 0 0px 1px #fff, inset 0 0 6px 1px rgba(0,0,0,.25);
}
button.wide,
button.narrow {
border-radius:4px;
}
button.wide {
margin: 10px;
width: 100px;
}
button.add-button {
width: 80px;
}
button.narrow,
button.Browse {
width:40px;
}
button.minor {
border-radius:4px;
height: 20px;
width: 20px;
margin: 5px;
border: 0;
box-shadow: none;
background-color: transparent;
}
button.minor:hover {
background: white;
}
.buttons-joined {
display: inline-block;
margin:10px;
}
.buttons-joined button {
border-right-width: 0;
border-radius:0;
margin: 0;
}
.buttons-joined button:first-child {
border-radius:4px 0 0 4px;
}
.buttons-joined button:last-child {
border-right-width: 1px;
border-radius:0 4px 4px 0;
}
button[disabled] {
color:#ccc;
cursor:auto;
}
button[disabled]:hover {
background: white;
}
button.action {
background-color: #7092ff;
}
button.action:hover {
background-color: #6282ee;
}
button.delete {
background-color: #ff7070;
}
button.delete:hover {
background-color: #ef5454;
}
button.save {
background-color: #6bc641;
}
button.save:hover {
color: #59ac33;
background-color: #6bc641;
}
button.close {
position: absolute;
top: 10px;
right: 10px;
}
button .label {
margin-right: 3px;
}
button.action .label {
color: white;
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
}
/* Icons */
.icon {
display:inline-block;
vertical-align:top;
width:20px;
height:20px;
background:transparent url(../img/sprite.png) no-repeat 0px 0px;
text-indent:-9999px;
overflow:hidden;
}
.icon.icon-pre-text {
margin-right: 3px;
}
/* Definitions for every icon */
.icon.browse { background-position: 0px 0px;}
.icon.add-point { background-position: -20px 0px;}
.icon.add-line { background-position: -40px 0px;}
.icon.add-area { background-position: -60px 0px;}
.icon.undo { background-position: -80px 0px;}
.icon.redo { background-position: -100px 0px;}
.icon.apply { background-position: -120px 0px;}
.icon.save { background-position: -140px 0px;}
.icon.close { background-position: -160px 0px;}
.icon.delete { background-position: -180px 0px;}
.icon.remove { background-position: -200px 0px;}
.icon.inspect { background-position: -220px 0px;}
.icon.zoom-in { background-position: -240px 0px;}
.icon.zoom-out { background-position: -260px 0px;}
.icon.geocode { background-position: -280px 0px;}
.icon.layers { background-position: -300px 0px;}
.icon.avatar { background-position: -320px 0px;}
.icon.nearby { background-position: -340px 0px;}
.fillD .icon.browse { background-position: 0px -20px;}
.fillD .icon.add-point { background-position: -20px -20px;}
.fillD .icon.add-line { background-position: -40px -20px;}
.fillD .icon.add-area { background-position: -60px -20px;}
.fillD .icon.undo { background-position: -80px -20px;}
.fillD .icon.redo { background-position: -100px -20px;}
.fillD .icon.apply { background-position: -120px -20px;}
.fillD .icon.save { background-position: -140px -20px;}
.fillD .icon.close { background-position: -160px -20px;}
.fillD .icon.delete { background-position: -180px -20px;}
.fillD .icon.remove { background-position: -200px -20px;}
.fillD .icon.inspect { background-position: -220px -20px;}
.fillD .icon.zoom-in { background-position: -240px -20px;}
.fillD .icon.zoom-out { background-position: -260px -20px;}
.fillD .icon.geocode { background-position: -280px -20px;}
.fillD .icon.layers { background-position: -300px -20px;}
.fillD .icon.avatar { background-position: -320px -20px;}
.fillD .icon.nearby { background-position: -340px -20px;}
button[disabled] .icon.browse { background-position: 0px -40px;}
button[disabled] .icon.add-point { background-position: -20px -40px;}
button[disabled] .icon.add-line { background-position: -40px -40px;}
button[disabled] .icon.add-area { background-position: -60px -40px;}
button[disabled] .icon.undo { background-position: -80px -40px;}
button[disabled] .icon.redo { background-position: -100px -40px;}
button[disabled] .apply.icon { background-position: -120px -40px;}
button[disabled] .save.icon { background-position: -140px -40px;}
button[disabled] .close.icon { background-position: -160px -40px;}
button[disabled] .delete.icon { background-position: -180px -40px;}
button[disabled] .icon.remove { background-position: -200px -40px;}
button[disabled] .icon.inspect { background-position: -220px -40px;}
button[disabled] .icon.zoom-in { background-position: -240px -40px;}
button[disabled] .icon.zoom-out { background-position: -260px -40px;}
button[disabled] .icon.geocode { background-position: -280px -40px;}
button[disabled] .icon.layers { background-position: -300px -40px;}
button[disabled] .icon.avatar { background-position: -320px -40px;}
button[disabled] .icon.nearby { background-position: -340px -40px;}
/* Toggle Icon is special */
.toggle.icon { background-position: 0px -180px;}
a:hover .toggle.icon { background-position: -20px -180px;}
.selected .toggle.icon,
a.selected:hover .toggle.icon { background-position: -40px -180px;}
/* ToolBar / Persistent UI Elements
------------------------------------------------------- */
#bar {
border-bottom:1px solid #ccc;
position:absolute;
left:0px;
top:0px;
right:0;
height:60px;
}
/* Special rules for toolbar icons */
button.Browse .label {
display: none;
}
/* Status box */
.messages {
display:none;
}
/* Inspector */
.inspector-wrap {
position:absolute;
right: 0;
border-left: 1px solid #ccc;
border-bottom: 1px solid #ccc;
min-height: 60px;
opacity:0;
display:none;
}
.inspector-inner {
padding: 10px;
min-width:400px;
}
.inspector-inner.head {
border-bottom: 1px solid #ccc;
background:#fff;
height:80px;
z-index:99;
position:relative;
}
.inspector-wrap a.permalink {
text-decoration:none;
margin-right:1em;
}
.inspector-inner.tag-wrap {
max-height: 200px;
overflow: auto;
}
.inspector-toggle {
padding:10px;
text-shadow: 0 -1px 0 rgba(0,0,0,0.25);
text-align:center;
color:#fff;
cursor:pointer;
background:#7092ff;
}
.inspector-body {
position:relative;
}
.tag-row {
width: 100%;
padding-right: 70px;
position: relative;
height: 30px;
}
.input-wrap {
position: relative;
margin-top: -1px;
}
.tag-row input {
width: 50%;
border-right: 0;
}
.tag-row input.key {
font-weight: bold;
}
.tag-row:first-child input {
border-top: 1px solid #ccc;
}
.tag-row input.value {
border-right: 1px solid #ccc;
}
.tag-row button {
position: absolute;
top: 0;
right: 0;
}
.tag-row-empty button {
display: none;
}
.tag-row button.tag-help {
right: 30px;
}
.inspector-buttons {
border-top: 1px solid #ccc;
}
/* Map Controls */
.map-control {
left:10px;
position:absolute;
}
.map-overlay {
width: 150px;
position:absolute;
left:50px;
top:0;
display: block;
}
/* Zoomer */
.zoombuttons {
top:70px;
width: 40px;
}
.zoombuttons button.zoom-in {
border-radius:4px 4px 0 0;
}
.zoombuttons button.zoom-out {
border-top:0;
border-radius:0 0 4px 4px;
}
/* Layer Switcher */
.layerswitcher-control {
top:210px;
}
.opacity-options-wrapper {
padding: 10px 10px 0 10px;
}
.opacity-options {
border:1px solid #b0b0b0;
background: url(../img/background-pattern-opacity.png) 0 0 repeat;
height:20px;
width:62px;
position: absolute;
right: 10px;
top: 10px;
}
.opacity-options li {
height: 100%;
display: block;
float: left;
cursor: pointer;
}
.opacity-options li .select-box{
position: absolute;
width:20px;
height:18px;
z-index: 9999;
}
.layerswitcher-control li:hover .select-box,
.layerswitcher-control li.selected .select-box {
border: 2px solid #4672ff;
background: rgba(70, 114, 255, .5);
opacity: .5;
}
.layerswitcher-control li.selected:hover .select-box,
.layerswitcher-control li.selected .select-box {
opacity: 1;
}
.layerswitcher-control .opacity {
background:#222;
display:inline-block;
width:20px;
height:18px;
}
/* Geocoder */
.geocode-control {
top:160px;
}
.geocode-control input {
width: 128px;
height: 20px;
border: 1px solid #ccc;
margin: 9px;
line-height: 20px;
}
/* Map
------------------------------------------------------- */
#map {
display:block;
position:absolute;
overflow:hidden;
top:60px;
left:0;
right:0;
bottom:0;
background:#fff;
}
img.tile {
position:absolute;
transform-origin:0 0;
-ms-transform-origin:0 0;
-webkit-transform-origin:0 0;
-moz-transform-origin:0 0;
-o-transform-origin:0 0;
}
#tile-g {
position:absolute;
top:0;
}
/* About Section
------------------------------------------------------- */
.about-block {
position:absolute;
bottom:0px;
}
#about {
bottom:0px;
right:0px;
border-radius:3px 0 0 0;
}
#user-list {
border-radius:3px 3px 0 0;
right: 330px;
max-width: 300px;
}
#user-list a:not(:last-child):after {
content: ', ';
}
/* Account Information */
.user-container {
position:absolute;
left:0px;
border-radius:0 3px 0 0;
}
.user-container .logout {
margin-left:10px;
border-left: 1px solid white;
padding-left: 10px;
}
/* typeahead dropdowns
------------------------------------------------------- */
div.typeahead {
width:200px;
z-index: 9999;
box-shadow: 0 5px 10px 0 rgba(0,0,0,.2);
margin-top: -1px;
max-height: 120px;
overflow: auto;
}
div.typeahead a {
height: 30px;
border:1px solid #ccc;
border-top: 0;
background-color: #fff;
padding:1px 4px;
display:block;
}
div.typeahead a:first-child {
border-top: 1px solid #ccc;
}
/* Modals
------------------------------------------------------- */
.modal {
width:640px;
height:550px;
padding:10px;
position:absolute;
background:#f0f0f0;
top:50px;
left:50%;
margin-left:-330px;
box-shadow:0 0 5px #000;
}
.modal.modal-alert {
width:320px;
height:100px;
margin-left:-160px;
}
.shaded:before {
content:'';
background:rgba(0,0,0,0.5);
position:fixed;
left:0px; right:0px; top:0px; bottom:0px;
}
.commit-modal h3 small.count {
font-size:12px;
font-weight: normal;
line-height:40px;
border-radius:20px;
padding:5px;
background:#7092ff;
margin-left:10px;
color:#fff;
}
.commit-modal ul {
border-bottom:1px solid #ccc;
background:#fff;
}
.commit-modal li {
border-top:1px solid #ccc;
padding:2px 10px;
}
.commit-modal .changeset-comment {
width:630px;
/* firefox uses monospace in textareas */
font:normal 12px/20px 'Helvetica Neue', Arial, sans-serif;
}
.commit-section {
max-height:250px;
overflow:auto;
}
/* Notices
------------------------------------------------------- */
.notice {
position:absolute;
top:0px;
left:70px;
width:250px;
height:50px;
background:#fff;
font-size: 20px;
font-weight: bold;
line-height:30px;
}
/* Tooltips
------------------------------------------------------- */
.tooltip {
white-space: normal;
position: absolute;
z-index: -1000;
height: 0;
padding: 5px;
opacity: 0;
display: block;
filter: alpha(opacity=0);
visibility: visible;
}
.tooltip.in {
opacity: 0.8;
filter: alpha(opacity=80);
z-index: 1030;
height: auto;
}
.tooltip.top {
margin-top: -5px;
}
.tooltip.right {
margin-left: 5px;
}
.tooltip.bottom {
margin-top: 5px;
}
.tooltip.left {
margin-left: -5px;
}
.tooltip-inner {
max-width: 200px;
min-width: 100px;
font-size: 11px;
font-weight: bold;
line-height: 20px;
padding: 5px 10px;
color: #ffffff;
text-align: center;
text-decoration: none;
background-color: #000000;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
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-top-color: #000000;
border-width: 5px 5px 0;
}
.tooltip.right .tooltip-arrow {
top: 50%;
left: 0;
margin-top: -5px;
border-right-color: #000000;
border-width: 5px 5px 5px 0;
}
.tooltip.left .tooltip-arrow {
top: 50%;
right: 0;
margin-top: -5px;
border-left-color: #000000;
border-width: 5px 0 5px 5px;
}
.tooltip.bottom .tooltip-arrow {
top: 0;
left: 50%;
margin-left: -5px;
border-bottom-color: #000000;
border-width: 0 5px 5px;
}
/* Mobile Tweaks
------------------------------------------------------- */
* {
-webkit-tap-highlight-color:rgba(0,0,0,0);
-webkit-touch-callout:none;
}