Created
February 8, 2012 19:13
-
-
Save stevegraham/1772337 to your computer and use it in GitHub Desktop.
spotify app stylesheets
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Adam Theme / Dark Theme | |
* Standard Layout for Spotify Client | |
* Defines the basic styles for an app | |
* @copyright 2011 by Spotify | |
*/ | |
/** | |
* Declarations for Adam Theme | |
* | |
* @section declarations | |
*/ | |
/** | |
* Import declarations */ | |
@import url("sp://import/css/core-dark.css"); | |
@import url("sp://import/css/shared.css"); | |
/** | |
* Namespace declaration */ | |
@namespace sp "http://www.spotify.com/"; | |
/** | |
* Adam Theme specific styles | |
* | |
* @section styles | |
*/ | |
html { | |
background-color: #373737; | |
color: #999; | |
} | |
h1, h2, h3, h4 { | |
color: #FFF; | |
font: 14px/19px "Helvetica", "Arial", sans-serif; | |
} | |
.offline h1 { | |
color: #1b1b1b; | |
font-family: "Helvetica", "Arial", sans-serif; | |
font-size: 18px; | |
font-weight: bold; | |
left: auto; | |
line-height: 25px; | |
margin-top: -12px; | |
position: relative; | |
top: 50%; | |
text-align: center; | |
text-shadow: 1px 1px 0px #515151; | |
} | |
/** | |
* Throbber, Adam Theme / Dark Theme */ | |
@-webkit-keyframes throbber { | |
0% { background-position-x: 0; } | |
8.33% { background-position-x: -32px; } | |
16.66% { background-position-x: -64px; } | |
25% { background-position-x: -96px; } | |
33.33% { background-position-x: -128px; } | |
41.66% { background-position-x: -160px; } | |
50% { background-position-x: -192px; } | |
58.33% { background-position-x: -224px; } | |
66.66% { background-position-x: -256px; } | |
75% { background-position-x: -288px; } | |
83.33% { background-position-x: -320px; } | |
91.66% { background-position-x: -352px; } | |
} | |
.throbber, .throbber div, .throbber span { | |
position: absolute; | |
} | |
.throbber, .throbber span { | |
left: 0; | |
right: 0; | |
} | |
.throbber div, .throbber span { | |
top: 50%; | |
} | |
.throbber { | |
-webkit-transition: 400ms opacity; | |
background: #474747; | |
bottom: 0; | |
display: block; | |
top: 0; | |
z-index: 10; | |
} | |
.throbber div { | |
-webkit-animation: throbber 1s infinite; | |
-webkit-animation-timing-function: step-start; | |
background: url("sp://import/img/throbber-big-white.png") 0 0 no-repeat; | |
height: 32px; | |
margin: -16px -16px 0 0; | |
right: 50%; | |
width: 32px; | |
z-index: 10; | |
} | |
.throbber span { | |
color: #DDD; | |
margin-top: 16px; | |
text-align: center; | |
text-shadow: initial; | |
} | |
.paging a { | |
background-image: url(sp://import/img/paginationDark25x25.png); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@import url("sp://import/css/reset.css"); | |
/** | |
* Adam Theme core / Dark Theme core | |
* Adam themed webkit core layout for Spotify Client | |
* Defines the basic dark styles for the client | |
* @copyright 2011 by Spotify | |
*/ | |
/* Search Cancel button */ | |
::-webkit-search-cancel-button { | |
display: none; | |
} | |
/* Form errors */ | |
::-webkit-validation-bubble-message { | |
display: none; | |
} | |
/* Scrollbars */ | |
::-webkit-scrollbar { | |
height: 14px; | |
width: 14px; | |
} | |
::-webkit-scrollbar-corner { | |
background: url("sp://import/img/scrollbars/dark/corner.png"); | |
} | |
::-webkit-scrollbar-thumb:horizontal { | |
background: | |
url("sp://import/img/scrollbars/dark/horizontal-thumb-left.png") no-repeat left, | |
url("sp://import/img/scrollbars/dark/horizontal-thumb-right.png") no-repeat right, | |
url("sp://import/img/scrollbars/dark/horizontal-thumb-middle.png"); | |
min-width: 20px; | |
padding-left: 7px; | |
padding-right: 7px; | |
-webkit-background-clip: border-box, border-box, content-box; | |
} | |
::-webkit-scrollbar-thumb:vertical { | |
background: | |
url("sp://import/img/scrollbars/dark/vertical-thumb-top.png") no-repeat top, | |
url("sp://import/img/scrollbars/dark/vertical-thumb-bottom.png") no-repeat bottom, | |
url("sp://import/img/scrollbars/dark/vertical-thumb-middle.png"); | |
min-height: 20px; | |
padding-top: 7px; | |
padding-bottom: 7px; | |
-webkit-background-clip: border-box, border-box, content-box; | |
} | |
/* | |
* Horizontal Together | |
*/ | |
::-webkit-scrollbar-button:horizontal:increment:double-button { | |
background: url("sp://import/img/scrollbars/dark/button-right-together.png"); | |
width: 16px; | |
} | |
::-webkit-scrollbar-button:horizontal:decrement:double-button { | |
background: url("sp://import/img/scrollbars/dark/button-left-together.png"); | |
width: 22px; | |
} | |
::-webkit-scrollbar-button:horizontal:increment:double-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-right-together-pressed.png"); | |
} | |
::-webkit-scrollbar-button:horizontal:decrement:double-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-left-together-pressed.png"); | |
} | |
::-webkit-scrollbar-track:horizontal { | |
background: | |
url("sp://import/img/scrollbars/dark/horizontal-track-left.png") no-repeat left, | |
url("sp://import/img/scrollbars/dark/horizontal-track.png"); | |
} | |
::-webkit-scrollbar-track-piece:horizontal:start { | |
margin-left: 4px; | |
} | |
::-webkit-scrollbar-track-piece:double-button:horizontal:end { | |
margin-right: -5px; | |
} | |
/* | |
* Horizontal Separate | |
*/ | |
::-webkit-scrollbar-button:horizontal:increment:single-button { | |
background: url("sp://import/img/scrollbars/dark/button-right.png"); | |
width: 21px; | |
} | |
::-webkit-scrollbar-button:horizontal:decrement:single-button { | |
background: url("sp://import/img/scrollbars/dark/button-left.png"); | |
width: 21px; | |
} | |
::-webkit-scrollbar-button:horizontal:increment:single-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-right-pressed.png"); | |
} | |
::-webkit-scrollbar-button:horizontal:decrement:single-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-left-pressed.png"); | |
} | |
::-webkit-scrollbar-track-piece:single-button:horizontal:start { | |
background: url("sp://import/img/scrollbars/dark/horizontal-track.png") no-repeat 5px 0px; /* Hack to hide horizontal-track-left. */ | |
margin-left: -5px; | |
} | |
::-webkit-scrollbar-track-piece:single-button:horizontal:end { | |
margin-right: -5px; | |
} | |
/* | |
* Vertical Together | |
*/ | |
::-webkit-scrollbar-button:vertical:increment:double-button { | |
background: url("sp://import/img/scrollbars/dark/button-down-together.png"); | |
height: 16px; | |
} | |
::-webkit-scrollbar-button:vertical:decrement:double-button { | |
background: url("sp://import/img/scrollbars/dark/button-up-together.png"); | |
height: 22px; | |
} | |
::-webkit-scrollbar-button:vertical:increment:double-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-down-together-pressed.png"); | |
} | |
::-webkit-scrollbar-button:vertical:decrement:double-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-up-together-pressed.png"); | |
} | |
::-webkit-scrollbar-track:vertical { | |
background: | |
url("sp://import/img/scrollbars/dark/vertical-track-top.png") no-repeat top, | |
url("sp://import/img/scrollbars/dark/vertical-track.png"); | |
} | |
::-webkit-scrollbar-track-piece:vertical:start { | |
margin-top: 4px; | |
} | |
::-webkit-scrollbar-track-piece:double-button:vertical:end { | |
margin-bottom: -5px; | |
} | |
/* | |
* Vertical Separate | |
*/ | |
::-webkit-scrollbar-button:vertical:increment:single-button { | |
background: url("sp://import/img/scrollbars/dark/button-down.png"); | |
height: 21px; | |
} | |
::-webkit-scrollbar-button:vertical:decrement:single-button { | |
background: url("sp://import/img/scrollbars/dark/button-up.png"); | |
height: 21px; | |
} | |
::-webkit-scrollbar-button:vertical:increment:single-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-down-pressed.png"); | |
} | |
::-webkit-scrollbar-button:vertical:decrement:single-button:active { | |
background: url("sp://import/img/scrollbars/dark/button-up-pressed.png"); | |
} | |
::-webkit-scrollbar-track-piece:single-button:vertical:start { | |
background: url("sp://import/img/scrollbars/dark/vertical-track.png") no-repeat 0px 5px; /* Hack to hide vertical-track-top. */ | |
margin-top: -5px; | |
} | |
::-webkit-scrollbar-track-piece:single-button:vertical:end { | |
margin-bottom: -5px; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* List view styles | |
*/ | |
.sp-list { | |
max-height: 600px; | |
margin: 0; | |
overflow: auto; | |
text-shadow: initial; | |
width: 100%; | |
} | |
.sp-list > div { | |
background-color: #373737; | |
background-image: -webkit-linear-gradient(#373737, #373737 50%, #313131 50%, #313131); | |
background-size: 40px 40px; | |
border-spacing: initial; | |
color: #DDD; | |
display: table; | |
font-size: 11px; | |
left: 0; | |
line-height: 20px; | |
position: relative; | |
right: 0; | |
table-layout: fixed; | |
top: 0; | |
width: 100%; | |
} | |
.sp-list .sp-item { | |
color: #DDD; | |
cursor: default; | |
display: table; | |
position: absolute; | |
table-layout: fixed; | |
text-decoration: none; | |
width: 100%; | |
} | |
.sp-list .sp-track-playing { | |
background-image: -webkit-linear-gradient(#232323, #232323 1px, #262626 2px, #1F1F1F); | |
} | |
.sp-list .sp-item.sp-track-selected { | |
background-color: #6C6C6C; | |
background-image: none; | |
} | |
.sp-list .sp-track-playing { color: #AFFF84; } | |
.sp-list .sp-item.sp-track-selected { color: #BBB; } | |
.sp-list:focus .sp-item.sp-track-selected { background-color: #A1D9FF; } | |
.sp-list:focus .sp-item.sp-track-selected { color: #2B3844; } | |
.sp-list .sp-item * { color: inherit; } | |
.sp-list .sp-item > span { | |
display: table-cell; | |
overflow: hidden; | |
padding: 0 5px; | |
text-overflow: ellipsis; | |
white-space: nowrap; | |
} | |
.sp-list .sp-track-field-star { | |
position: relative; | |
width: 26px; | |
} | |
/* sp-icon-star override on playing */ | |
.sp-list .sp-track-playing .sp-icon-star:not(:hover) { | |
background-image: url("sp://import/img/mainlist-row-playing-marker.png"); | |
background-position: 7px 4px; | |
padding: 2px 7px; | |
width: 12px; | |
} | |
.sp-list:focus .sp-item.sp-track-selected.sp-track-playing .sp-icon-star:not(:hover) { background-position-x: -17px; } | |
.sp-list .sp-item.sp-track-selected.sp-track-playing .sp-icon-star:not(:hover) { background-position-x: -5px; } | |
.sp-list .sp-track-playing.sp-track-paused .sp-icon-star:not(:hover) { background-position-x: -29px; } | |
.sp-list:focus .sp-item.sp-track-selected.sp-track-playing.sp-track-paused .sp-icon-star:not(:hover) { background-position-x: -53px; } | |
.sp-list .sp-item.sp-track-selected.sp-track-playing.sp-track-paused .sp-icon-star:not(:hover) { background-position-x: -41px; } | |
/* sp-track-field-share */ | |
.sp-list .sp-track-field-share { | |
position: relative; | |
width: 30px; | |
} | |
.sp-list :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { | |
text-align: right; | |
width: 50px; | |
} | |
.sp-list .sp-track-field-number { width: 30px; } | |
/* Unavailable */ | |
.sp-list .sp-track:not(.sp-track-availability-0):not(.sp-track-selected) .sp-track-field-name, | |
.sp-list .sp-track:not(.sp-track-selected) :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { color: #888; } | |
/* Premium */ | |
.sp-list .sp-track:not(.sp-track-selected).sp-track-availability-3 .sp-track-field-name { color: #776990; } | |
.sp-list .sp-track a { text-decoration: initial; } | |
.sp-list .sp-track a:hover { text-decoration: underline; } | |
/** .sp-icon-star | |
* | |
* @usage: star/unstar specific track | |
*/ | |
/* state track unstarred */ | |
.sp-icon-star { | |
background-image: url("sp://import/img/mainlist-star-simple-dark.png"); | |
background-position-x: -43px; | |
background-position-y: 2px; | |
background-repeat: no-repeat; | |
background-clip: content-box; | |
display: inline-block; | |
height: 16px; | |
left: 0; | |
padding: 2px 5px; | |
position: absolute; | |
top: 0; | |
width: 16px; | |
} | |
.sp-icon-star:hover { background-position-x: -59px; } | |
.sp-icon-star:active { background-position-x: -75px; } | |
/* state track starred */ | |
.sp-track-starred .sp-icon-star { background-position-x: 5px; } | |
.sp-track-starred .sp-icon-star:hover { background-position-x: -11px; } | |
.sp-track-starred .sp-icon-star:active { background-position-x: -27px; } | |
/* state selected track starred */ | |
.sp-track-selected.sp-track-starred .sp-icon-star { background-position-x: -91px; } | |
.sp-track-selected.sp-track-starred .sp-icon-star:hover { background-position-x: -11px; } | |
.sp-track-selected.sp-track-starred .sp-icon-star:active { background-position-x: -27px; } | |
/** .sp-icon-share | |
* | |
* @usage: share tracks | |
*/ | |
.sp-icon-share { | |
background: url("sp://import/img/mainlist-share.png") 5px 0 no-repeat; | |
background-clip: content-box; | |
display: inline-block; | |
height: 16px; | |
left: 0; | |
padding: 2px 5px; | |
position: absolute; | |
top: 0; | |
vertical-align: -2px; | |
width: 20px; | |
} | |
.sp-icon-share:hover { background-position-x: -15px; } | |
.sp-icon-share:active { background-position-x: -35px; } | |
:focus .sp-track-selected .sp-icon-share { background-position-x: -55px; } | |
:focus .sp-track-selected .sp-icon-share:hover { background-position-x: -75px; } | |
:focus .sp-track-selected .sp-icon-share:active { background-position-x: -95px; } | |
/** .sp-icon-share | |
* | |
* @usage: share tracks | |
*/ | |
.sp-popularity-indicator { | |
background: url("sp://import/img/popularity-indicator.png") 0 -8px repeat-x; | |
background-clip: content-box; | |
display: block; | |
} | |
.sp-popularity-indicator-value { | |
background: url("sp://import/img/popularity-indicator.png") 0 0 repeat-x; | |
display: block; | |
height: 8px; | |
} | |
.sp-list .sp-track-availability-0 .sp-popularity-indicator { background-position-y: -8px; } | |
.sp-list .sp-track-availability-0 .sp-popularity-indicator-value { background-position-y: 0; } | |
.sp-list .sp-track:not(.sp-track-availability-0) .sp-popularity-indicator { background-position-y: -24px; } | |
.sp-list .sp-track:not(.sp-track-availability-0) .sp-popularity-indicator-value { background-position-y: -16px; } | |
.sp-list .sp-track-playing .sp-popularity-indicator { background-position-y: -104px; } | |
.sp-list .sp-track-playing .sp-popularity-indicator-value { background-position-y: -96px; } | |
.sp-list:focus .sp-track-selected .sp-popularity-indicator { background-position-y: -56px; } | |
.sp-list:focus .sp-track-selected .sp-popularity-indicator-value { background-position-y: -48px; } | |
/** | |
* Light theme | |
* | |
* @usage: add class .sp-light to sp-list | |
*/ | |
.sp-list.sp-light .sp-item { | |
color: #333; | |
} | |
.sp-list.sp-light > div { | |
background-color: initial; | |
background-image: -webkit-linear-gradient(rgba(0, 0, 0, .07), rgba(0, 0, 0, .07) 50%, transparent 50%, transparent); | |
} | |
.sp-light .sp-icon-star { | |
background-image: url("sp://import/img/mainlist-star-simple-light.png"); | |
} | |
.sp-light .sp-icon-share { | |
background-image: url("sp://import/img/mainlist-share-light.png"); | |
} | |
.sp-list.sp-light .sp-track-playing { | |
color: #fff; | |
text-shadow: 0px -1px 0px #6f6f6f; | |
} | |
.sp-list.sp-light .sp-track-playing { | |
background-image: -webkit-linear-gradient(top, #c1c1c1 1px, #a6a6a6 1px, #818181 100%); | |
} | |
.sp-list.sp-light .sp-track-playing .sp-icon-star:not(:hover) { | |
background-image: url("sp://import/img/mainlist-row-playing-marker-light.png"); | |
} | |
/* Ugly workaround, we should get a new png from Pontus */ | |
.sp-track-selected.sp-track-starred .sp-icon-star:hover, | |
.sp-track-selected.sp-track-starred .sp-icon-star:active { | |
background-image: url("sp://import/img/mainlist-star-simple-dark.png"); | |
} | |
.sp-list.sp-light .sp-item.sp-track-selected { | |
background-color: #a2a2a2; | |
background-image: initial; | |
} | |
.sp-list.sp-light .sp-item.sp-track-selected, .sp-list.sp-light .sp-item.sp-track-selected * { | |
color: #fff; | |
text-shadow: 0px 1px 0px rgba(0, 0, 0, .27); | |
} | |
.sp-list.sp-light:focus .sp-item.sp-track-selected { | |
background-color: #4f86de; | |
background-image: initial; | |
} | |
.sp-list.sp-light:focus .sp-item.sp-track-selected, .sp-list.sp-light:focus .sp-item.sp-track-selected * { | |
color: #fff; | |
text-shadow: 0px 1px 0px #2e79aa; | |
} | |
.sp-list.sp-light .sp-track:not(.sp-track-selected) :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { | |
color: #666; | |
} | |
.sp-list.sp-light .sp-track.sp-track-playing :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { | |
color: #fff; | |
text-shadow: 0px -1px 0px #6f6f6f; | |
} | |
.sp-list.sp-light:focus a.sp-item.sp-track-selected.sp-track-playing :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { | |
color: #fff; | |
} | |
.sp-list.sp-light a.sp-item.sp-track-selected.sp-track-playing :-webkit-any(.sp-track-field-duration, .sp-track-field-number) { | |
color: #666; | |
text-shadow: none; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Mini reset for | |
* html, body, ul, h1, h2, h3, h4, h5, h6, p, ul, ol, | |
* :focus, a, a:hover, var, button, input, textarea, | |
* input[type="search"], fieldset, legend | |
* | |
* @section reset | |
*/ | |
html, body, ul, h1, h2, h3, h4, h5, h6, p, fieldset { | |
margin: 0; | |
padding: 0; | |
} | |
html, body { overflow: initial; } | |
html { | |
-webkit-font-smoothing: subpixel-antialiased; | |
-webkit-user-select: none; | |
cursor: default; | |
font: 12px/17px "Lucida Grande", "Tahoma", "Arial", sans-serif; | |
height: 100%; | |
} | |
ul, ol { list-style: none; } | |
:focus { outline: initial; } | |
button, input, textarea { | |
-webkit-appearance: none; | |
font-family: inherit; | |
font-size: 12px; | |
} | |
fieldset { | |
border: 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is it possible to get any of the images files somewhere?