mirror of
https://github.com/Nighthawk42/roll20-character-sheets.git
synced 2026-08-30 03:40:32 +00:00
532 lines
14 KiB
CSS
532 lines
14 KiB
CSS
.charsheet input.name {
|
|
background-color: rgb(255 255 255 / 50%);
|
|
border-bottom: 1px solid #000;
|
|
border-left: none;
|
|
border-right: none;
|
|
border-top: none;
|
|
color: #000;
|
|
font-size: 3rem;
|
|
min-width: 226px;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet input.title,
|
|
.charsheet input.title2,
|
|
.charsheet input.title3 {
|
|
background-color: rgb(255 255 255 / 50%);
|
|
border-bottom: 1px solid #000;
|
|
border-left: none;
|
|
border-right: none;
|
|
border-top: none;
|
|
color: #000;
|
|
float: right;
|
|
font-size: 2rem;
|
|
width: 230px;
|
|
}
|
|
|
|
.charsheet textarea.special {
|
|
background-color: rgb(255 255 255 / 50%);
|
|
color: #000;
|
|
font-size: 1.75rem;
|
|
height: 65px;
|
|
left: 25px;
|
|
min-height: 65px;
|
|
overflow-y: auto;
|
|
position: relative;
|
|
resize: vertical;
|
|
width: 91%;
|
|
}
|
|
|
|
.charsheet input.item-name {
|
|
background-color: rgb(255 255 255 / 50%);
|
|
border-bottom: 1px solid #000;
|
|
color: #000;
|
|
font-size: 1.65rem;
|
|
height: 30px;
|
|
text-align: center;
|
|
width: 202px;
|
|
}
|
|
|
|
.charsheet textarea.item {
|
|
background-color: rgb(255 255 255 / 50%);
|
|
color: #000;
|
|
font-size: 1.4rem;
|
|
height: 110px;
|
|
min-height: 110px;
|
|
overflow-y: auto;
|
|
position: relative;
|
|
resize: vertical;
|
|
text-align: center;
|
|
width: 95%;
|
|
}
|
|
|
|
.charsheet textarea.item ~ span {
|
|
min-height: 35px;
|
|
}
|
|
|
|
.charsheet .toggle-strength-roll:checked ~ .wrapper .strength-roll,
|
|
.charsheet .toggle-dexterity-roll:checked ~ .wrapper .dexterity-roll,
|
|
.charsheet .toggle-intelligence-roll:checked ~ .wrapper .intelligence-roll {
|
|
transition: all .2s;
|
|
}
|
|
|
|
.charsheet .toggle-strength-roll:not(:checked) ~ .wrapper .strength-roll,
|
|
.charsheet .toggle-dexterity-roll:not(:checked) ~ .wrapper .dexterity-roll,
|
|
.charsheet .toggle-intelligence-roll:not(:checked) ~ .wrapper .intelligence-roll {
|
|
opacity: .5;
|
|
pointer-events: none;
|
|
transform: scale(.75);
|
|
transition: all .2s;
|
|
}
|
|
|
|
.charsheet .wrapper {
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/parchment_paper_seamless_pattern.jpg");
|
|
border: 1px solid black;
|
|
font-family: serif;
|
|
font-size: 12px;
|
|
padding: 10px;
|
|
width: 820px;
|
|
}
|
|
|
|
.charsheet .wrapper > div {
|
|
max-width: 100%;
|
|
min-width: 100%;
|
|
transform: none;
|
|
width: 100%;
|
|
}
|
|
|
|
.charsheet .tab-content .logo {
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/logo.png");
|
|
background-repeat: no-repeat;
|
|
background-size: contain;
|
|
display: block;
|
|
height: 100px;
|
|
margin-bottom: 20px;
|
|
margin-inline: auto;
|
|
position: relative;
|
|
width: 480px;
|
|
}
|
|
|
|
/* dice image replacement */
|
|
.charsheet .d6::before {
|
|
content: 'l';
|
|
display: block;
|
|
font-family: "dicefontd6";
|
|
font-size: 60px;
|
|
font-weight: normal;
|
|
opacity: .4;
|
|
position: relative;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet label .icon {
|
|
cursor: pointer;
|
|
opacity: .4;
|
|
}
|
|
|
|
/* highlight selected */
|
|
.charsheet label input[type="checkbox"]:checked + span::before,
|
|
.charsheet label input:checked + .icon {
|
|
opacity: 1;
|
|
}
|
|
|
|
.charsheet label:has(input.hidden:not(:checked)):hover span::before,
|
|
.charsheet label input:not(:checked):hover + .icon {
|
|
cursor: pointer;
|
|
opacity: .5;
|
|
transform: rotateZ(-5deg);
|
|
}
|
|
|
|
.charsheet label:has(input.hidden:checked):hover span::before,
|
|
.charsheet label input:checked:hover + .icon {
|
|
cursor: pointer;
|
|
transform: rotateZ(5deg);
|
|
}
|
|
|
|
.charsheet .melee-attack button[type="roll"].attack-roll,
|
|
.charsheet .ranged-attack button[type="roll"].attack-roll,
|
|
.charsheet .magic-attack button[type="roll"].attack-roll,
|
|
.charsheet .armor button[type="roll"].defense-roll,
|
|
.charsheet .health button[type="action"].restore-roll {
|
|
height: 45px;
|
|
margin: auto;
|
|
opacity: 0;
|
|
width: 45px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.charsheet .melee-attack {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/melee.png");
|
|
transition: all .2s;
|
|
}
|
|
.charsheet .melee-attack:hover {
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/melee2.png");
|
|
cursor: pointer;
|
|
transform: scale(1.1);
|
|
}
|
|
.charsheet .ranged-attack {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/ranged.png");
|
|
transition: all .2s;
|
|
}
|
|
.charsheet .ranged-attack:hover {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/ranged2.png");
|
|
cursor: pointer;
|
|
transform: scale(1.1);
|
|
}
|
|
.charsheet .magic-attack {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/magic.png");
|
|
transition: all .2s;
|
|
}
|
|
.charsheet .magic-attack:hover {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/magic2.png");
|
|
cursor: pointer;
|
|
transform: scale(1.1);
|
|
}
|
|
.charsheet .armor {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/armor.png");
|
|
transform: scale(1.4, 1);
|
|
transition: all .2s;
|
|
}
|
|
.charsheet .armor:hover {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/armor2.png");
|
|
cursor: pointer;
|
|
transform: scale(1.5, 1.1);
|
|
}
|
|
.charsheet .health {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/health.png");
|
|
transition: all .2s;
|
|
}
|
|
.charsheet .health:hover {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/health2.png");
|
|
cursor: pointer;
|
|
transform: scale(1.1);
|
|
}
|
|
.charsheet .potion {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/potion.png");
|
|
display: block;
|
|
}
|
|
.charsheet .sneaky {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/sneaky.png");
|
|
display: block;
|
|
}
|
|
.charsheet .speak {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/speak.png");
|
|
display: block;
|
|
}
|
|
.charsheet .track {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/track.png");
|
|
display: block;
|
|
}
|
|
.charsheet .book {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/book.png");
|
|
display: block;
|
|
}
|
|
.charsheet .food {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/food.png");
|
|
display: block;
|
|
}
|
|
.charsheet .gold {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/gold.png");
|
|
display: block;
|
|
}
|
|
.charsheet .herbs {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/herbs.png");
|
|
display: block;
|
|
}
|
|
.charsheet .rope {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/rope.png");
|
|
display: block;
|
|
}
|
|
.charsheet .wings {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/wings.png");
|
|
display: block;
|
|
}
|
|
.charsheet .nightvision {
|
|
background-size: cover;
|
|
background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Hero%20Kids/Images/nightvision.png");
|
|
display: block;
|
|
}
|
|
|
|
.charsheet .icon {
|
|
height: 56px;
|
|
width: 56px;
|
|
}
|
|
|
|
.charsheet input.tab1:checked ~ div.section-player,
|
|
.charsheet input.tab2:checked ~ div.section-monster,
|
|
.charsheet input.tab3:checked ~ div.section-pet,
|
|
.charsheet input.tab4:checked ~ div.section-inventory {
|
|
display: block;
|
|
}
|
|
|
|
.charsheet input.tab {
|
|
cursor: pointer;
|
|
height: 30px;
|
|
margin-right: -120px;
|
|
opacity: 0;
|
|
position: relative;
|
|
width: 120px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.charsheet span.tab {
|
|
background: #FFF;
|
|
border-radius: 4px;
|
|
color: #000;
|
|
cursor: pointer;
|
|
display: inline-block;
|
|
font-family: system-ui;
|
|
font-size: 1.5rem;
|
|
height: inherit;
|
|
position: relative;
|
|
text-align: center;
|
|
width: 120px;
|
|
}
|
|
|
|
.charsheet .tab:hover + span {
|
|
outline: 1px solid grey;
|
|
}
|
|
|
|
.charsheet div.tab-content { display: none; }
|
|
|
|
.charsheet input.tab1:checked + span.tab1,
|
|
.charsheet input.tab2:checked + span.tab2,
|
|
.charsheet input.tab3:checked + span.tab3,
|
|
.charsheet input.tab4:checked + span.tab4 {
|
|
display: inline-table;
|
|
background: #000;
|
|
color: #FFF;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.charsheet input[type="checkbox"].center {
|
|
height: 30px;
|
|
width: 30px;
|
|
}
|
|
|
|
/* Fake checkbox */
|
|
.charsheet span > input[type="checkbox"]:checked + span::before {
|
|
content: "✓";
|
|
}
|
|
|
|
.charsheet .health-box {
|
|
display: grid;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet span > input[type="checkbox"] + span::before {
|
|
-moz-border-radius: 8px;
|
|
-moz-box-shadow: 0 0 2px #ccc;
|
|
-webkit-border-radius: 8px;
|
|
-webkit-box-shadow: 0 0 2px #ccc;
|
|
background: #f6f6f6;
|
|
background: -moz-radial-gradient(#f6f6f6, #dfdfdf);
|
|
background: -webkit-radial-gradient(#f6f6f6, #dfdfdf);
|
|
background: -ms-radial-gradient(#f6f6f6, #dfdfdf);
|
|
background: -o-radial-gradient(#f6f6f6, #dfdfdf);
|
|
background: radial-gradient(#f6f6f6, #dfdfdf);
|
|
border: solid 1px #000;
|
|
border-radius: 8px;
|
|
box-shadow: 0 0 2px #ccc;
|
|
content: "";
|
|
display: inline-block;
|
|
font-size: 40px;
|
|
height: 30px;
|
|
line-height: 21px;
|
|
text-align: center;
|
|
vertical-align: middle;
|
|
width: 30px;
|
|
}
|
|
|
|
.charsheet input[type="checkbox"] {
|
|
border-radius: 8px;
|
|
cursor: pointer;
|
|
height: 30px;
|
|
margin-right: -31px;
|
|
opacity: 0;
|
|
position: relative;
|
|
text-align: center;
|
|
vertical-align: middle;
|
|
width: 30px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.charsheet hr {
|
|
margin-top: 2px;
|
|
margin-bottom: 10px;
|
|
border-top: 1px solid #000;
|
|
opacity: .5;
|
|
}
|
|
|
|
.charsheet .wrapper .sheet-col:has(h1) {
|
|
display: inline-grid;
|
|
grid-template-columns: auto auto;
|
|
align-items: center;
|
|
}
|
|
|
|
.charsheet .wrapper .sheet-col:has(h1) input {
|
|
margin-inline: auto;
|
|
margin-right: 0;
|
|
}
|
|
|
|
.charsheet h1 {
|
|
color: #000;
|
|
display: inline;
|
|
font-size: 25px;
|
|
line-height: 25px;
|
|
position: relative;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.charsheet h2 {
|
|
color: #000;
|
|
display: inline;
|
|
font-size: 22px;
|
|
text-align: center;
|
|
}
|
|
|
|
.ui-dialog .charsheet button {
|
|
min-height: 30px;
|
|
width: 30px;
|
|
}
|
|
|
|
.ui-dialog .charsheet .repcontrol button {
|
|
min-height: 18px;
|
|
width: 36px;
|
|
}
|
|
|
|
.ui-dialog .charsheet button:has(span) {
|
|
background-color: transparent;
|
|
background-image: none;
|
|
border: 1px solid #000;
|
|
color: #000;
|
|
min-height: 30px;
|
|
min-width: 70px;
|
|
text-shadow: none;
|
|
}
|
|
|
|
.ui-dialog .charsheet button::before {
|
|
font-size: 30px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.ui-dialog .charsheet button:hover {
|
|
background-color: #fff;
|
|
box-shadow: 1px 2px 4px #000;
|
|
transform: scale(1.04);
|
|
}
|
|
|
|
.ui-dialog .charsheet button:hover::before,
|
|
.ui-dialog .charsheet button:hover {
|
|
background-image: none;
|
|
color: #000;
|
|
text-shadow: 0 0 #000;
|
|
transition: scale .2s;
|
|
}
|
|
|
|
.ui-dialog .charsheet button > span {
|
|
font-size: 1.75rem;
|
|
margin-left: 2px;
|
|
}
|
|
|
|
.charsheet .grid-two {
|
|
align-items: center;
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
grid-template-rows: 1.5em;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet .grid-five {
|
|
align-items: center;
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
|
|
grid-template-rows: 2em;
|
|
margin-bottom: 3em;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet .grid-hero-six {
|
|
align-items: center;
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1em 1fr;
|
|
grid-template-rows: 2em;
|
|
margin-bottom: 10px;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet .grid-six {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
|
|
grid-template-rows: 2.5em 5em 5em;
|
|
margin-bottom: 2em;
|
|
margin-inline: auto;
|
|
text-align: center;
|
|
}
|
|
|
|
.charsheet .span-two {
|
|
grid-column: span 2;
|
|
}
|
|
|
|
.charsheet .span-four {
|
|
grid-column: span 4;
|
|
}
|
|
|
|
.charsheet .span-all {
|
|
grid-column: 1/-1;
|
|
}
|
|
|
|
.ui-dialog .charsheet .wrapper .center {
|
|
display: block;
|
|
margin: auto;
|
|
position: relative;
|
|
text-align: center;
|
|
}
|
|
|
|
.ui-dialog .charsheet .wrapper .right {
|
|
display: block;
|
|
margin: auto;
|
|
margin-right: 0;
|
|
position: relative;
|
|
text-align: right;
|
|
}
|
|
|
|
.ui-dialog .charsheet .wrapper .left {
|
|
display: block;
|
|
margin: auto;
|
|
margin-left: 0;
|
|
position: relative;
|
|
text-align: left;
|
|
}
|
|
|
|
.ui-dialog .charsheet label {
|
|
color: #000;
|
|
margin: auto;
|
|
padding: 0;
|
|
width: fit-content;
|
|
}
|
|
|
|
.ui-dialog .charsheet .sheet-col {
|
|
display: inline-block;
|
|
vertical-align: top;
|
|
width: min-content;
|
|
} |