overleaf/services/web/public/recurly/recurly.styl
2014-02-12 10:23:40 +00:00

772 lines
17 KiB
Stylus
Executable file

// Base grid system dimensions
grid_width = 480px
grid_columns = 12
outer_margin = 20px
column_space = 20px
column_width = grid_width / grid_columns - column_space
base_font_size = round(grid_width * 0.033333)
vertical_space = 20px
input_border = 1px
input_padding = 5px
input_height = base_font_size + 6px
field_height = input_height + (input_padding + input_border)*2
columns(n)
(column_width * n + column_space * (-1+n))
// Some CSS3 property mixins
user-select()
-webkit-user-select arguments
-khtml-user-select arguments
-moz-user-select arguments
-o-user-select arguments
user-select arguments
linear-gradient(start, stops...)
prop = current-property[0]
stops = unquote(join(', ', stops))
add-property(prop, '-webkit-linear-gradient(%s, %s)' % (start stops) )
add-property(prop, '-moz-linear-gradient(%s, %s)' % (start stops) )
add-property(prop, '-o-linear-gradient(%s, %s)' % (start stops) )
'linear-gradient(%s, %s)' % (start stops)
image-linear-gradient(image, start, stops...)
prop = current-property[0]
stops = unquote(join(', ', stops))
add-property(prop, '%s, -webkit-linear-gradient(%s, %s)' % (image start stops) )
add-property(prop, '%s, -moz-linear-gradient(%s, %s)' % (image start stops) )
add-property(prop, '%s, -o-linear-gradient(%s, %s)' % (image start stops) )
'%s linear-gradient(%s, %s)' % (image start stops)
transition()
-webkit-transition arguments
-moz-transition arguments
// For IE6/7 support we use this for all inputs,
// in lieu of border-box sizing 100%
field-width(v)
width v
// Fit the input by subtracting padding and border from box
& input[type=text]
width v - (input_border+input_padding)*2
// Horizontally stack a field on the preceeding field
hstack(cols)
field-width columns(cols)
add-property(margin-left, column_space)
add-property(clear, none)
// Subscription form
.recurly
display block
position relative
width columns(grid_columns) + (outer_margin*2)
.cost, .discount
font-size base_font_size
text-align right
.subscription
border-radius 9px 9px 0 0
text-shadow 0 1px 0 white
padding-top 20px
overflow hidden
.plan
color #333
overflow hidden
position relative
zoom 1 // IE6
.name
float left
font-size base_font_size*2
min-width columns(6) - column_space
padding-left outer_margin
padding-right (column_space*2)
.quantity.field
clear none
field-width columns(2)
margin 4px 0
&:before
content "\d7"
height 48px
line-height 30px
position absolute
right 100%
width column_space * 2
font-size 20px
text-align center
vertical-align middle
z-index 1337
color #666
.recurring_cost
float right
text-align right
padding-right outer_margin
.cost
font-size base_font_size*2
.interval
font-size round(base_font_size*0.75)
padding-bottom vertical_space
.free_trial
clear left
float left
font-size 13px
height 22px
margin 0
position absolute
top 35px
left outer_margin
font-style italic
.setup_fee
clear both
background url(images/dash.png) repeat-x 1px top
overflow hidden
padding-top vertical_space
.title
float left
padding-left outer_margin
font-weight bold
font-size base_font_size
.cost
float right
padding-right outer_margin
.vat
height 24px
padding column_space outer_margin
display none
background url(images/dash.png) repeat-x 1px top
&.applicable
display block
.title
font-size base_font_size
font-weight normal
float left
.cost
float right
font-size 18px
.add_ons
clear both
&.any
margin vertical_space (outer_margin/2)
.add_on
background #ecedee
background linear-gradient(top, #ecedee, #e5e6e7)
margin 0
height 43px
line-height 42px
vertical-align middle
position relative
clear both
overflow hidden
border-top 1px solid #ccc
border-left 1px solid #ccc
border-right 1px solid #ccc
text-shadow 0 1px 0 white
color #999
font-weight 300
font-size 16px
zoom 1 // IE6
cursor default
&.first
border-top-left-radius 10px
border-top-right-radius 10px
&.last
border-bottom 1px solid #ccc
border-bottom-left-radius 10px
border-bottom-right-radius 10px
.name
font-size inherit
font-weight inherit
font-style italic
color inherit
width columns(6) - outer_margin
margin-left (outer_margin/2) - 1
margin-right column_space
position absolute
left 0
top 0
.quantity.field
position absolute
top 4px
left columns(6) + (outer_margin/2) + column_space - 1px
field-width columns(2)
display none
&:before
content "\d7"
height 48px
line-height 30px
position absolute
right 100%
width column_space * 2
font-size 20px
text-align center
vertical-align middle
z-index 1337
color #666
.cost
font-size inherit
line-height inherit
vertical-align middle
position absolute
right (outer_margin/2)
&:hover
background linear-gradient(top, '#f0f0f0 0%', '#dfdfdf 50%', '#d5d5d5 50%', '#e0e0e0 100%')
box-shadow inset 0 1px 0 #fff
text-shadow none
color #111
&:active
&.selected
color #111
background linear-gradient(top, #f0f0f0, #fff)
width auto
box-shadow inset 0 1px 4px 0 rgba(0,0,0,0.075)
text-shadow none
&.selected
background #fff url(images/check.png) no-repeat (outer_margin/2) center
.name
padding-left 24px
&:hover
background #fcf5f0 url(images/uncheck.png) no-repeat (outer_margin/2) center
&.selected .quantity
display block
.coupon
clear both
overflow hidden
height field_height
color #333
padding column_space outer_margin
position relative
background url(images/dash.png) repeat-x 1px top
.check
width 26px
height 26px
float left
border-radius 15px 15px 15px 15px
background #70CCF8
border 1px solid #0090C9
margin 3px 0 1px 10px
box-shadow inset 0 1px 0 0 rgba(255,255,255,.35), 0 1px 1px 0 rgba(0,0,0,0.1)
background #43BEF9 url(images/coupon_check.png) no-repeat center center
background image-linear-gradient(url(images/coupon_check.png) no-repeat center center, top, '#71CDFA 0%', '#43BEF9 50%', '#00B1F6 50%', '#71CEFB 100%')
&:hover
background image-linear-gradient(url(images/coupon_check.png) no-repeat center center, top, '#71CDFA 0%', '#43BEF9 50%', '#00B1F6 50%', '#71CEFB 100%')
box-shadow inset 0 1px 0 0 rgba(255,255,255,.75), 0 1px 1px 0 rgba(0,0,0,0.1)
&:active
background image-linear-gradient(url(images/coupon_check.png) no-repeat center center, top, #f0f0f0, #fff)
box-shadow inset 0 3px 3px 0 rgba(0,0,0,0.025)
border 1px solid #999
&.checking .check
background #f0f0f0 url(images/coupon_checking.gif) no-repeat center center
box-shadow inset 0 3px 3px 0 rgba(0,0,0,0.025)
border 1px solid #999
&.invalid .coupon_code
border-color #a55
background #fee
color #311
.coupon_code .error
left columns(8)
.description
float left
margin-left column_space
height field_height
line-height field_height
vertical-align middle
font-size base_font_size * 0.9
.discount
float right
height field_height
line-height field_height
vertical-align middle
.error
padding input_padding
line-height input_height
vertical-align middle
color black
text-shadow 0 1px 0 #fec
background #ffc
border 1px solid #ba1
box-shadow 3px 5px 5px 0 rgba(0,0,0,0.1)
border-radius 5px
font-size 13px
.server_errors
color #fff
text-shadow 0 1px 0 black
margin 0 outer_margin
.error
padding-left 26px
background rgba(240,250,0,0.5) url(images/error.png) no-repeat 5px (input_padding + 4px)
opacity 0
&.any
opacity 1.0
transition opacity 0.5s linear
margin column_space outer_margin
margin-bottom 0
.contact_info
.billing_info
.accept_tos
position relative
padding vertical_space outer_margin
overflow hidden
zoom 1 // IE6
.title
font-size base_font_size
height base_font_size + 4px
font-weight bold
padding-bottom 20px
color #404041
text-shadow 0 1px 0 white
float left
.credit_card
.paypal
clear both
.payment_method
margin-bottom vertical_space
width columns(8)
.payment_option
float right
input[type=radio]
margin-right 10px
display none
&.multiple
height field_height
clear both
// line-height field_height
input[type=radio]
display block
float left
height field_height - 5px
.card_option
float left
.paypal_option
float right
.logo, .accepted_cards
opacity 0.5
.payment_option
&:hover, &.selected
.logo, .accepted_cards
cursor pointer
opacity 1
.payment_option
line-height field_height - 2px
display block
height field_height - 2px
line-height field_height
.title
margin 0
font-size 12px
.icon
float left
width 24px
height field_height
margin 0 5px
&.card_option
border-radius 5px 0 0 5px
border-right none
.icon
width 42px
background url(images/credit_cards/generic.png) no-repeat 0 center
&.paypal_option
border-radius 0 5px 5px 0
float right
.logo
height 24px
width 90px
display inline-block
vertical-align middle
background url(images/paypal_logo.png) no-repeat 0 center
.paypal_message
width columns(8)
font-style italic
margin-bottom 10px
.contact_info
background url(images/dash.png) repeat-x 1px bottom
.accept_tos
background url(images/dash.png) repeat-x 1px top
overflow visible
input[type=checkbox]
display inline
line-height field_height
vertical-align middle
label
margin 0 0 0 5px
display inline
line-height field_height
vertical-align middle
.field .error
display block
position static
.field
display inline // IE margin bug hack
float left
clear left
field-width columns(8) // Default field is full width
height field_height
margin-bottom vertical_space
position relative
&.company_name
margin-bottom 0 //IE not accounting for margins, so using other methods
.error
min-width columns(4) - (input_padding+1)*2
white-space nowrap
position absolute
top 0
left 100%
margin-left column_space
z-index 1337
.placeholder
position absolute
top 0
left 0
right 0
bottom 0
padding-left input_padding + 4px
font-size base_font_size
font-weight normal
line-height field_height
vertical-align middle
color #999
cursor text
overflow hidden
white-space nowrap
user-select none
font-weight 300
&.focus .placeholder
color #ccc
&.invalid .placeholder
color #a77
// Special field sizes
&.coupon_code
field-width columns(4)
&.first_name
clear left
field-width columns(4)
.error
left columns(8)
&.last_name
hstack(4)
&.card_number
field-width columns(6)
.error
left columns(8)
&.cvv
hstack(2)
&.expires
field-width columns(8)
.title
float left
font-size round(base_font_size*0.8)
line-height 24px
vertical-align middle
width columns(2) - 1px
.month
float left
field-width columns(3) + column_width
margin-left 0
.year
float left
margin-left 1px
field-width columns(2)
&.state
field-width columns(5)
.error
left columns(8)
&.zip
hstack(3)
&.vat_number
field-width columns(4)
display none
&.applicable
display block
// Special limited address cases for zip
.only_zipstreet .zip.field
.only_zip .zip.field
margin-left 0
clear left
.accepted_cards
display inline-block
height field_height
overflow hidden
.card
background-position right top
background-repeat no-repeat
text-indent -3000px
width 32px
height 32px
margin 0
padding 0
display inline-block
&.mastercard
background-image url(images/credit_cards/mastercard.png)
&.american_express
background-image url(images/credit_cards/american_express.png)
&.visa
background-image url(images/credit_cards/visa.png)
&.discover
background-image url(images/credit_cards/discover.png)
&.jcb
background-image url(images/credit_cards/jcb.png)
&.laser
background-image url(images/credit_cards/laser.png)
&.diners_club
background-image url(images/credit_cards/diners_club.png)
&.maestro
background-image url(images/credit_cards/maestro.png)
&.match
// nothing
&.no_match
opacity 0.5
// General
input[type=text],
select
vertical-align middle
color #000000
&.invalid
border-color #a55
background #fee
color #311
input[type=text]
display block
background white
border input_border solid #a0a0a5
box-shadow inset 0 2px 3px rgba(0,0,0,0.1)
font-size base_font_size
font-family inherit
padding input_padding
height input_height
&[disabled]
background #eee
input[type=checkbox]
color red
select
color inherit
font-family inherit
width 100%
> option
color inherit
// DUE NOW BAR
.due_now
background url(images/due_now.png) no-repeat top left
clear both
color #2a3a3c
height 70px
line-height 67px
vertical-align middle
// overflow hidden
padding 0 outer_margin + 5px
width columns(12)
position relative
left -5px
text-shadow 0 1px 0 rgba(255,255,255,0.5)
.title
float left
font-size 29px
position relative
.cost
color #fff
float right
font-size 33px
font-weight bold
letter-spacing 1px
margin 0
position relative
text-shadow 0px 1px 1px rgba(0,0,0,0.9)
.footer
border-radius 0px 0px 9px 9px
margin 0px
padding outer_margin
&.submitting .footer
background url(images/submitting.gif) no-repeat columns(5) 28px
button.submit
height 46px
max-width 600px
font-size 18px
font-weight 700
color #302106
text-align center
margin-left 0px
border 1px solid #767674
background #e7a500
border-radius 10px
outline none
box-shadow inset rgba(255, 255, 255, 0.7) 0px 1px 0px, rgba(0,0,0, 0.5) 0px 1px 3px
background-image -webkit-gradient(linear, 0% 20%, 0% 100%, from(#FECD00), to(#CE7B00))
background -moz-linear-gradient(top, #fecd00, #ce7b00)
text-shadow rgba(255,255,255, .5) 0 1px 0
padding 10px 20px
&:hover
color #451
&:active
top 2px
color #302106
text-shadow rgba(255,255,255, .5694) 0 -1px 0
outline none
background-image -webkit-gradient(linear, 0% 0%, 0% 100%, from(#CE7B00), to(#FECD00))
background -moz-linear-gradient(top, #ce7b00, #fecd00)
box-shadow rgba(255, 255, 255, 0.69) 0px -1px 0px inset, rgba(0,0,0, 0.26) 0px 2px 3px
&[disabled]
position relative
height 46px
max-width 600px
padding 0 10px
font-weight 700
color #555
text-shadow rgba(255,255,255, .5694) 0 1px 0
text-align center
opacity .75
border 1px solid #767674
background #e7a500
-moz-border-radius 10px
-webkit-border-radius 10px
border-radius 10px
-webkit-user-select none
-moz-user-select -moz-none
outline none
background-image -webkit-gradient(linear, 0% 0%, 0% 100%, from(#DBD9D2), to(#999))
background -moz-linear-gradient(top, #DBD9D2, #999999)
-webkit-background-clip padding-box
-webkit-box-shadow rgba(255, 255, 255, 0.69) 0px 1px 0px inset, rgba(0,0,0, 0.26) 0px 2px 3px
box-shadow rgba(255, 255, 255, 0.699219) 0px 1px 0px inset, rgba(0,0,0, 0.269219) 0px 2px 3px
.iefail
background #666
padding 10px
position absolute
top -1%
left -1%
height 102%
width 102%
z-index 9999
.chromeframe
background #fff
border 1px solid #ccc
padding 10px
p
text-align center
&.blast
font-size 1.3em
font-weight bold
a
color #4183C4
text-transform capitalize