mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-31 04:02:29 +00:00
874 lines
18 KiB
Sass
874 lines
18 KiB
Sass
$sizes: (full: 100%, threequarters: 75%, half: 50%, quarter: 25%)
|
|
|
|
$textdark: #373b44
|
|
$textlight: #C8C4BB
|
|
$borderdark: #373b44
|
|
$borderlight: #C8C4BB
|
|
$backgrounddark: #2b2b2b
|
|
$backgroundlight: #f5f5f5
|
|
|
|
@mixin grid($columns, $gap, $a_content: null, $j_content: null, $a_items: null, $j_items: null)
|
|
display: grid
|
|
grid-template-columns: $columns
|
|
grid-gap: $gap
|
|
@if $a_content != null
|
|
align-content: $a_content
|
|
@if $j_content != null
|
|
justify-content: $j_content
|
|
@if $a_items != null
|
|
align-items: $a_items
|
|
@if $j_items != null
|
|
justify-items: $j_items
|
|
|
|
.sheetform
|
|
background-color: transparent
|
|
|
|
.charsheet
|
|
color: $textdark
|
|
|
|
.container
|
|
width: 850px
|
|
padding: 0
|
|
margin: 0
|
|
|
|
button
|
|
color: $textdark
|
|
|
|
button[type="roll"]
|
|
width: auto
|
|
height: 24px
|
|
padding: 0
|
|
margin: 0
|
|
border-top-left-radius: 10px
|
|
border-bottom-right-radius: 10px
|
|
border-radius: unset
|
|
background-image: none
|
|
background-color: transparent
|
|
box-sizing: border-box
|
|
-moz-box-sizing: border-box
|
|
-webkit-box-sizing: border-box
|
|
|
|
input:not([type=checkbox])
|
|
background: transparent
|
|
width: 100%
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
input[type=number],
|
|
input[type=text].center
|
|
text-align: center
|
|
-moz-appearance: textfield
|
|
-webkit-appearance: textfield
|
|
|
|
textarea
|
|
background: transparent
|
|
margin: 0
|
|
width: 100%
|
|
height: 65px
|
|
resize: vertical
|
|
box-sizing: border-box
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
select
|
|
background: transparent
|
|
width: 100%
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
label
|
|
width: auto
|
|
color: $textdark
|
|
|
|
.options-flag,
|
|
.options-flag+span
|
|
position: absolute
|
|
top: -10px
|
|
left: -10px
|
|
|
|
.options-flag
|
|
opacity: 0
|
|
width: 16px
|
|
min-height: 16px
|
|
z-index: 2
|
|
|
|
&+span
|
|
white-space: nowrap
|
|
width: 16px
|
|
height: 16px
|
|
font-size: 16px
|
|
font-family: pictos
|
|
color: #bbb
|
|
cursor: pointer
|
|
margin-top: 0
|
|
display: none
|
|
|
|
&:not(:checked) ~ .hiddenBox,
|
|
&:not(:checked) ~ div .hiddenBox
|
|
display: none !important
|
|
|
|
.number-20
|
|
font-size: 20px
|
|
|
|
.float
|
|
float: left
|
|
box-sizing: border-box
|
|
width: 100%
|
|
margin: 4px 0
|
|
padding-right: 5px
|
|
|
|
@each $name, $percent in $sizes
|
|
.#{$name}
|
|
width: $percent
|
|
|
|
.break
|
|
clear: both
|
|
|
|
.textcenter
|
|
text-align: center
|
|
|
|
.formular
|
|
padding: 9px
|
|
margin-top: 15px
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
label
|
|
display: block
|
|
float: left
|
|
height: 20px
|
|
margin-top: -19px
|
|
margin-bottom: 0px
|
|
background: #fff
|
|
padding: 2px 5px 2px 5px
|
|
font-weight: normal
|
|
|
|
input
|
|
box-sizing: border-box
|
|
border: 0
|
|
|
|
.gridplace
|
|
|
|
&:not(.repcontrol)
|
|
|
|
select
|
|
border: none
|
|
margin: 0
|
|
|
|
input,
|
|
select,
|
|
button:not(.repcontrol_add):not(.repcontrol_edit):not(.repcontrol_del)
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
-webkit-box-shadow: none
|
|
-moz-box-shadow: none
|
|
box-shadow: none
|
|
|
|
.repitem,
|
|
.items
|
|
|
|
&:nth-child(even)
|
|
background: $backgroundlight
|
|
|
|
.repcontrol_move
|
|
float: left
|
|
|
|
.repcontrol_del
|
|
width: auto
|
|
|
|
.navigation
|
|
display: flex
|
|
flex-direction: row
|
|
justify-content: space-evenly
|
|
|
|
button
|
|
padding: calc(.5em + .45em) calc(.9em + .45em)
|
|
color: $textdark
|
|
background: conic-gradient(from 90deg at 3px 3px,#0000 90deg,$textdark 0) .45em .45em/calc(100% - 3px - 2*.45em) calc(100% - 3px - 2*.45em)
|
|
transition: .3s linear, color 0s, background-color 0s
|
|
font-size: 14px
|
|
border: 0
|
|
user-select: none
|
|
-webkit-user-select: none
|
|
touch-action: manipulation
|
|
|
|
.sheet-attribute_skills,
|
|
.sheet-weapons_mage,
|
|
.sheet-asects_inventory,
|
|
.sheet-xp
|
|
display: none
|
|
|
|
$buttons: (attribute_skills, weapons_mage, asects_inventory, xp)
|
|
@each $button in $buttons
|
|
.sheet-tabstoggle[value="#{$button}"] ~ div.sheet-#{$button}
|
|
display: block
|
|
|
|
.header
|
|
margin-bottom: 4px
|
|
padding: 2px 8px
|
|
background: black
|
|
color: white
|
|
font-weight: bold
|
|
border-top-left-radius: 10px
|
|
border-bottom-right-radius: 10px
|
|
|
|
span
|
|
text-transform: uppercase
|
|
|
|
.right
|
|
border: none
|
|
float: right
|
|
height: unset
|
|
color: #fff
|
|
font-size: 15px
|
|
text-shadow: none
|
|
text-transform: none
|
|
font-weight: normal
|
|
|
|
&.dice:before
|
|
content: "t"
|
|
padding-right: 5px
|
|
|
|
input
|
|
height: 21px
|
|
|
|
.head-logo
|
|
vertical-align: middle
|
|
|
|
.logo
|
|
height: 200px
|
|
|
|
.settings
|
|
margin-top: 20px
|
|
|
|
select
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
.head-info
|
|
|
|
.head-info-boxes
|
|
width: 100%
|
|
|
|
>div
|
|
|
|
&:first-child
|
|
height: 36px
|
|
|
|
input
|
|
width: 100%
|
|
box-sizing: border-box
|
|
|
|
textarea
|
|
height: 64px
|
|
border: none
|
|
|
|
.formular
|
|
margin-bottom: 5px
|
|
|
|
.attribute,
|
|
.extra
|
|
display: inherit
|
|
|
|
.attribute-stats,
|
|
.extra-stats
|
|
|
|
input
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
text-align: center
|
|
|
|
button
|
|
display: block
|
|
float: left
|
|
margin-top: -21px
|
|
background: var(--color-surface1)
|
|
padding: 2px 5px 2px 5px
|
|
color: $textdark
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
button[type="roll"]
|
|
|
|
&:before
|
|
content: ""
|
|
display: none
|
|
|
|
.attribute-stats
|
|
@include grid(197px 197px 197px, 5px 20px)
|
|
|
|
.extra-stats
|
|
@include grid(197px, 5px 20px)
|
|
|
|
.formular
|
|
|
|
.max
|
|
background: var(--color-surface1)
|
|
display: block
|
|
float: right
|
|
height: 26px
|
|
width: 50px !important
|
|
margin-top: -21px
|
|
margin-right: -5px
|
|
border: 1px solid
|
|
margin-top: -21px2
|
|
|
|
.skills
|
|
display: inherit
|
|
|
|
.grid
|
|
@include grid(530px 120px 60px 60px 55px, 5px)
|
|
|
|
>div
|
|
background-color: $backgroundlight
|
|
font-weight: bold
|
|
text-align: center
|
|
|
|
.gridplace
|
|
|
|
input
|
|
border: none
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
button[type="roll"]
|
|
border: none
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
.basicskills .items,
|
|
.repcontainer .repitem
|
|
@include grid(530px 120px 60px 60px 55px, 5px)
|
|
min-height: 40px
|
|
|
|
select
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
box-shadow: none
|
|
|
|
input.liketextarea
|
|
width: 845px
|
|
height: 26px
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
textarea
|
|
width: 845px
|
|
|
|
div
|
|
margin: auto 0
|
|
text-align: center
|
|
|
|
.status
|
|
position: relative
|
|
display: inherit
|
|
|
|
.repeat-stress,
|
|
.repeat-mana
|
|
display: none
|
|
|
|
input#checkbox-stress[value="1"] ~ .repeat-stress,
|
|
input#checkbox-mana[value="1"] ~ .repeat-mana
|
|
display: block
|
|
|
|
.header,
|
|
.repeat-wounds,
|
|
.repeat-stress,
|
|
.repeat-mana
|
|
position: relative
|
|
|
|
input.options-flag
|
|
width: auto
|
|
|
|
&:hover .options-flag+span
|
|
display: block
|
|
|
|
.sheet-status-row
|
|
|
|
&.wounds
|
|
@for $i from 1 through 10
|
|
input#attr_usable_wounds[value="#{$i}"] ~div.wounds:nth-child(n+#{$i + 3})
|
|
display: none
|
|
|
|
&.stress
|
|
@for $i from 1 through 10
|
|
input#attr_usable_stress[value="#{$i}"] ~div.stress:nth-child(n+#{$i + 3})
|
|
display: none
|
|
|
|
&.mana
|
|
@for $i from 1 through 20
|
|
input#attr_usable_mana[value="#{$i}"] ~div.mana:nth-child(n+#{$i + 2})
|
|
display: none
|
|
|
|
.settings
|
|
position: relative
|
|
display: flex !important
|
|
flex-direction: row
|
|
justify-content: space-evenly
|
|
|
|
input
|
|
position: absolute
|
|
top: -10px
|
|
left: -10px
|
|
opacity: 0
|
|
width: 16px
|
|
min-height: 16px
|
|
z-index: 2
|
|
|
|
label
|
|
color: red
|
|
user-select: none
|
|
width: min-content
|
|
|
|
input:checked+label
|
|
color: green
|
|
|
|
.sheet-status-row
|
|
@include grid(repeat(10, 9%), 1%)
|
|
|
|
.statusbox
|
|
position: relative
|
|
width: min-content
|
|
|
|
input[type="checkbox"]
|
|
display: none
|
|
& + label
|
|
&::before
|
|
width: 30px
|
|
height: 30px
|
|
display: block
|
|
content: " "
|
|
|
|
label
|
|
display: inline-block
|
|
width: 30px
|
|
height: 30px
|
|
font-size: 30px
|
|
line-height: 30px
|
|
background-color: transparent
|
|
cursor: pointer
|
|
margin: 0
|
|
padding: 0
|
|
|
|
label.value
|
|
position: absolute
|
|
top: 7px
|
|
left: 16px
|
|
font-size: 25px
|
|
width: auto
|
|
user-select: none
|
|
|
|
&.wounds
|
|
|
|
input[type="checkbox"]
|
|
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/heart_full.png")
|
|
background-repeat: no-repeat
|
|
|
|
input[type="checkbox"]:checked
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/heart_empty.png")
|
|
|
|
&.stress
|
|
|
|
input[type="checkbox"]
|
|
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/face_happy.png")
|
|
background-repeat: no-repeat
|
|
|
|
input[type="checkbox"]:checked
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/face-dizzy.png")
|
|
|
|
&.mana
|
|
|
|
input[type="checkbox"]
|
|
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/mage_stick_violet.png")
|
|
background-repeat: no-repeat
|
|
|
|
input[type="checkbox"]:checked
|
|
& + label
|
|
&::before
|
|
background-image: url("https://codeberg.org/ButterflyAspect/roll20-character-sheet/raw/branch/develop/img/mage_stick.png")
|
|
|
|
.consequences
|
|
display: inherit
|
|
|
|
.grid
|
|
|
|
.repeat-consequences
|
|
@include grid(90px 325px, 5px)
|
|
|
|
.repcontainer
|
|
|
|
.repitem
|
|
|
|
.repeat-consequences
|
|
@include grid(90px 325px, 5px)
|
|
|
|
select:not(:hover)
|
|
-webkit-appearance: none
|
|
-moz-appearance: none
|
|
appearance: none
|
|
|
|
.weapons
|
|
display: inherit
|
|
|
|
.grid
|
|
@include grid(470px 120px 90px 90px 55px, 5px)
|
|
|
|
>div
|
|
background-color: $backgroundlight
|
|
font-weight: bold
|
|
text-align: center
|
|
|
|
.gridplace
|
|
|
|
input
|
|
border: none
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
button[type="roll"]
|
|
border: none
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
.repcontainer
|
|
|
|
.repitem
|
|
|
|
.repeat-weapon
|
|
@include grid(470px 120px 90px 90px 55px, 5px)
|
|
min-height: 40px
|
|
|
|
input.liketextarea
|
|
width: 845px
|
|
height: 26px
|
|
border: 1px solid $borderlight
|
|
border-radius: 3px
|
|
|
|
textarea
|
|
width: 845px
|
|
|
|
div
|
|
margin: auto 0
|
|
text-align: center
|
|
|
|
.repeat-weapon
|
|
|
|
input.options-flag
|
|
width: auto
|
|
|
|
&:hover .options-flag+span
|
|
display: block
|
|
|
|
.mage
|
|
display: inherit
|
|
|
|
input
|
|
border: none
|
|
|
|
button[type="roll"]
|
|
border: none
|
|
width: -webkit-fill-available
|
|
width: -moz-available
|
|
|
|
input
|
|
padding: 0
|
|
pointer-events: none
|
|
|
|
.grid
|
|
@include grid(500px 90px 90px 90px 55px, 5px)
|
|
|
|
>div
|
|
background-color: $backgroundlight
|
|
font-weight: bold
|
|
text-align: center
|
|
|
|
.gridplace
|
|
|
|
.repcontainer
|
|
|
|
.repitem
|
|
|
|
.repeat-mage
|
|
@include grid(500px 90px 90px 90px 55px, 5px)
|
|
min-height: 40px
|
|
|
|
input.options-flag
|
|
width: auto
|
|
|
|
&:hover .options-flag+span
|
|
display: block
|
|
|
|
div.hiddenBox
|
|
@include grid(165px 165px 165px 165px 165px, 5px)
|
|
grid-template-rows: auto
|
|
grid-template-areas: ". . . . ." "textarea textarea textarea textarea textarea"
|
|
|
|
#textarea
|
|
grid-area: textarea
|
|
|
|
input[type="checkbox"]
|
|
width: auto
|
|
float: left
|
|
|
|
input[name="attr_spelleffekt"]
|
|
width: calc(100% - 18px)
|
|
|
|
input[name="attr_spelleffekt_wiederstand"]
|
|
float: none
|
|
|
|
div
|
|
margin: auto 0
|
|
text-align: center
|
|
|
|
&#verbraucht
|
|
margin: auto auto
|
|
|
|
.aspects
|
|
display: inherit
|
|
|
|
.stunts
|
|
display: inherit
|
|
|
|
.repeat-stunt:hover .options-flag+span
|
|
display: block
|
|
|
|
.inventar
|
|
display: inherit
|
|
|
|
div[data-groupname=repeating_extras]
|
|
padding-top: 4px
|
|
|
|
input
|
|
width: 81px
|
|
|
|
input[name=attr_name]
|
|
width: 250px
|
|
|
|
input[name=attr_ruestungName]
|
|
width: 335px
|
|
|
|
.repeat-inv:hover .options-flag+span
|
|
display: block
|
|
|
|
.notes
|
|
display: inherit
|
|
|
|
.repeat-notes:hover .options-flag+span
|
|
display: block
|
|
|
|
.xp
|
|
display: inherit
|
|
|
|
.totalxp
|
|
display: grid
|
|
grid-auto-flow: column
|
|
grid-gap: 50px
|
|
|
|
input
|
|
width: 100%
|
|
text-align: end
|
|
|
|
.repcontainer
|
|
padding-top: 15px
|
|
|
|
.repitem
|
|
display: grid
|
|
grid-template-columns: 210px 50px 10px 210px 50px 10px 210px 50px
|
|
grid-gap: 5px
|
|
height: 40px
|
|
|
|
div
|
|
margin: auto 0
|
|
|
|
.brackets
|
|
border-left: 1px solid #aaa
|
|
border-right: 1px solid #aaa
|
|
border-radius: 12px
|
|
|
|
input
|
|
border: none
|
|
text-align: center
|
|
|
|
.version
|
|
text-align: right
|
|
|
|
.sheet-darkmode
|
|
|
|
input.readonly
|
|
cursor: not-allowed
|
|
|
|
button,
|
|
input,
|
|
optgroup,
|
|
select,
|
|
textarea,
|
|
.charsheet
|
|
color: #C8C4BB
|
|
|
|
.btn,
|
|
.btn.btn-default
|
|
color: $textlight
|
|
text-shadow: rgba(24, 26, 27, 0.75) 0px 1px 1px
|
|
background-color: $backgrounddark
|
|
background-image: linear-gradient(rgb(24, 26, 27), rgb(38, 41, 43))
|
|
border-color: rgb(62, 68, 70) rgb(62, 68, 70) rgb(67, 73, 76)
|
|
box-shadow: rgba(24, 26, 27, 0.2) 0px 1px 0px inset, rgba(0, 0, 0, 0.05) 0px 1px 2px
|
|
|
|
.sheetform
|
|
background-color: transparent
|
|
|
|
.charsheet
|
|
|
|
.container
|
|
|
|
button,
|
|
input,
|
|
optgroup,
|
|
select,
|
|
textarea
|
|
border-color: $borderdark
|
|
color: $textlight
|
|
|
|
.navigation
|
|
display: flex
|
|
flex-direction: row
|
|
justify-content: space-evenly
|
|
|
|
button
|
|
padding: calc(.5em + .45em) calc(.9em + .45em)
|
|
color: $textlight
|
|
background: conic-gradient(from 90deg at 3px 3px,#0000 90deg,$textlight 0) .45em .45em/calc(100% - 3px - 2*.45em) calc(100% - 3px - 2*.45em)
|
|
transition: .3s linear, color 0s, background-color 0s
|
|
|
|
.formular
|
|
border-color: $borderdark
|
|
|
|
label,
|
|
button
|
|
background-color: var(--dark-surface1)
|
|
color: $textlight
|
|
|
|
button
|
|
border-color: $borderdark
|
|
|
|
.gridplace
|
|
|
|
.repitem,
|
|
.items
|
|
|
|
&:nth-child(even)
|
|
background-color: $borderdark
|
|
|
|
.navigation
|
|
|
|
button
|
|
--color: $textlight
|
|
|
|
.skills,
|
|
.weapons,
|
|
.mage
|
|
|
|
.grid > div
|
|
background-color: $borderdark
|
|
|
|
.sheet-rolltemplate-butterfly
|
|
|
|
.sheet-container
|
|
background-color: #ffffff
|
|
border-top-left-radius: 10px
|
|
border-bottom-right-radius: 10px
|
|
width: 240px
|
|
|
|
.sheet-header
|
|
margin-bottom: 4px
|
|
padding: 2px 8px
|
|
background: black
|
|
color: white
|
|
font-weight: bold
|
|
border-top-left-radius: 10px
|
|
border-bottom-right-radius: 10px
|
|
|
|
span
|
|
text-transform: uppercase
|
|
|
|
.sheet-content
|
|
text-align: initial
|
|
|
|
p
|
|
line-height: 14px
|
|
|
|
&:last-child
|
|
margin: 0
|
|
|
|
div
|
|
padding: 5px
|
|
|
|
&:nth-child(even)
|
|
background: $backgroundlight
|
|
|
|
span
|
|
margin-left: 15px
|
|
font-weight: bold
|
|
|
|
.sheet-text
|
|
margin-left: 20px
|
|
font-weight: normal
|
|
|
|
.sheet-desc
|
|
grid-column: span 2
|
|
padding: 5px
|
|
text-align: center
|
|
|
|
span
|
|
right: unset
|
|
float: none
|
|
margin: 0
|
|
|
|
.inlinerollresult,
|
|
.sheet-fakeroll,
|
|
.sheet-spacer
|
|
background-color: transparent
|
|
border: none
|
|
position: relative
|
|
right: 30px
|
|
float: right
|
|
margin: 0
|
|
padding: 0
|
|
|
|
&.fullcrit
|
|
color: #3FB315
|
|
|
|
&.fullfail
|
|
color: #B31515
|
|
|
|
&.importandivoll
|
|
color: #4A57ED
|
|
|
|
&.sheet-rolltemplate-darkmode
|
|
|
|
.sheet-container
|
|
color: #EEE
|
|
background-color: var(--dark-surface1)
|
|
|
|
.sheet-content
|
|
border: solid 1px var(--dark-surface1)
|
|
border-top: none
|
|
|
|
div
|
|
|
|
&:nth-child(even)
|
|
background: var(--dark-surface2)
|