Files
roll20-character-sheets-tester/Heart-the-City-Beneath-mk2/Heart.css
T
Jakob Oesinghaus 02b1eff7d9 [Heart] Visual tweaks to abilities in chat
- Don't make the roll template bg cut off
- Slightly lower font size for ability details
2020-11-24 22:25:45 +01:00

569 lines
11 KiB
CSS

@import url("https://fonts.googleapis.com/css?family=Staatliches&display=swap");
.charsheet {
background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Heart-the-City-Beneath-mk2/Heart-bg.png");
background-size: cover;
box-sizing: border-box;
min-width: 700px;
color: #333;
--red-color: #a00a03;
--def-padding: 2px;
--tiny-gap: 3px;
--small-gap: 5px;
--large-gap: 10px;
}
.sheet-container {
display: grid;
grid-template-areas:
"top stress"
"beats abilities"
"equipment abilities"
"resources abilities"
"skills-domains abilities"
"fallout abilities"
"notes notes";
grid-template-columns: 1fr 1fr;
grid-template-rows: repeat(5,auto) 1fr auto;
grid-gap: var(--large-gap) calc(2 * var(--large-gap));
align-items: start;
align-content: start;
}
span,
label,
div {
box-sizing: border-box;
}
input,
select,
textarea {
background: rgba(255, 255, 255, 0.4);
box-sizing: border-box;
color: inherit;
padding: var(--def-padding) calc(2 * var(--def-padding));
}
.sheet-container select {
width: 100%;
margin: 0;
font-weight: bold;
height: 24px;
}
.sheet-container input[type="text"] {
width: 100%;
}
.sheet-container textarea {
display: block;
resize: vertical;
margin: 0;
}
.sheet-container label {
display: flex;
align-items: center;
margin: 0;
padding: 0;
font-size: 1em;
font-weight: initial;
}
.sheet-container button[type="action"],
.sheet-container button[type="roll"].btn {
padding: calc(2 * var(--def-padding));
text-shadow: none;
background: transparent;
box-shadow: none;
box-sizing: border-box;
font-weight: bold;
transition: all 0.2s;
margin: 0;
border: 1px solid #666;
}
.sheet-container button[type="action"]:hover,
.sheet-container button[type="roll"].btn:hover {
border-color: var(--red-color);
color: var(--red-color);
}
.sheet-container button[type="roll"].btn::before {
color: inherit;
margin-right: 4px;
}
.sheet-container button[type="roll"].btn:hover::before {
color: var(--red-color);
}
input[type="checkbox"] {
opacity: 0;
z-index: 1;
width: 12px;
height: 12px;
margin-right: -12px;
appearance: none;
}
input[type="checkbox"] + span {
display: flex;
border: 1px solid black;
background: transparent;
width: 16px;
height: 16px;
align-items: center;
justify-content: center;
}
input[type="checkbox"]:checked + span {
background: var(--red-color);
}
/* Repeating section generalities */
.repcontainer {
display: grid;
grid-gap: var(--tiny-gap);
}
.repcontrol {
display: flex;
}
.repcontrol .repcontrol_edit {
margin-left: auto;
order: 1;
}
.repcontrol button {
background: transparent;
color: #555;
border-radius: 0;
border-color: #999;
transition: all 0.2s;
font-family: pictos;
font-size: 0;
font-weight: bold;
padding: 5px 3px 2px;
line-height: 8px;
}
.repcontrol button:hover {
color: inherit;
/* border-color: var(--black-color); */
background: #ddd;
}
.repcontrol button.repcontrol_edit::after,
.repcontrol button.repcontrol_add::after {
font-size: 12px;
}
.repcontrol button.repcontrol_edit::after {
content: "(";
}
.repcontrol button.repcontrol_add::after {
content: "&";
}
.repcontainer.editmode + .repcontrol button.repcontrol_edit::after {
content: ")";
}
.itemcontrol {
z-index: 20;
}
.itemcontrol .btn {
padding: 0 6px;
line-height: 16px;
}
/* Font & text color-related formatting */
h3,
h4,
.sheet-redtext,
.sheet-pinktext,
.sheet-whiteonredtext,
.sheet-rolltemplate-heart .sheet-title,
.sheet-rolltemplate-heart .sheet-name {
text-transform: uppercase;
font-family: "Staatliches", cursive;
}
h3 {
font-size: 1.4em;
line-height: 1.25;
}
h4 {
font-size: 1.1em;
line-height: 1.25;
}
.sheet-redtext,
input[type="text"].sheet-redtext {
font-weight: bold;
color: var(--red-color);
}
input[type="text"].sheet-redtext {
background: transparent;
border: 0;
box-shadow: none;
font-size: 1.2em;
}
.sheet-pinktext {
color: #c33d37;
}
.sheet-whiteonredtext {
color: white;
background-color: var(--red-color);
padding: 0.2em;
}
.sheet-small-text {
font-size: 0.9em;
}
/* Auto-expand textareas */
.sheet-auto-expand {
position: relative;
cursor: text;
word-wrap: break-word;
padding: calc(2 * var(--def-padding));
min-height: 28px;
}
.sheet-auto-expand span {
visibility: hidden;
white-space: pre-wrap;
display: block;
}
.sheet-auto-expand textarea {
position: absolute;
overflow: hidden;
z-index: 1;
top: 0;
left: 0;
resize: none;
height: 100%;
word-wrap: break-word;
padding: inherit;
font: inherit;
color: inherit;
text-transform: inherit;
letter-spacing: inherit;
text-align: inherit;
}
/* Broadcast buttons */
button[type=roll].btn.sheet-broadcast-button {
font-family: pictos;
position: absolute;
border: none;
outline: none;
margin: 0;
padding: 0;
z-index: 3;
font-size: 12px;
line-height: 14px;
height: 14px;
width: 14px;
color: #777;
right: 3px;
bottom: 7px;
}
button[type=roll].sheet-broadcast-button::before {
display: none;
}
/* Common grid formatting */
.sheet-grid-tiny {
display: grid;
grid-gap: var(--tiny-gap);
}
.sheet-grid-small {
display: grid;
grid-gap: var(--small-gap);
}
.sheet-grid-large {
display: grid;
grid-gap: var(--large-gap);
}
/* Label, Name, etc */
.sheet-top {
grid-area: top;
}
.sheet-top img {
max-height: 180px;
margin: 0 auto var(--small-gap);
}
.sheet-top label span {
width: 100px;
font-size: 1.4em;
}
.sheet-top label input {
flex-grow: 1;
}
/* Stress area */
.sheet-stress {
grid-area: stress;
grid-template: auto 1fr / 1fr 1fr;
align-items: start;
justify-self: start;
}
.sheet-stress-values {
align-items: center;
grid-template-columns: 60px 65px 88px;
grid-row: span 2;
}
.sheet-stress-values h3 {
text-align: center;
}
.sheet-stresslabel {
grid-column: 2/3;
}
.sheet-stress-values label {
grid-column: span 2;
justify-content: space-between;
padding-right: 8px;
font-size: 1.4em;
}
.sheet-stress-values input[type="number"] {
justify-self: center;
}
.sheet-stress-clear select {
width: 100px;
margin-right: 5px;
height: 28px;
margin-bottom: 3px;
}
.sheet-stress-clear select,
.sheet-stress-clear button[typ="action"] {
margin-bottom: 3px;
}
.sheet-stress button[type="roll"] {
justify-self: left;
}
/* Roll button */
.sheet-rollbutton {
grid-template-columns: auto 1fr auto auto;
align-items: start;
grid-column: span 2;
grid-template-areas:
"skill text text text"
"domain text text text"
"mastery extradice difficulty button";
grid-gap: var(--tiny-gap) var(--large-gap);
}
.sheet-rollbutton .sheet-mastery {
justify-content: flex-end;
font-weight: bold;
align-self: stretch;
}
.sheet-rollbutton input[type="checkbox"] + span {
margin-right: 4px;
}
.sheet-rollbutton .sheet-small-text {
grid-area: text;
}
.sheet-rollbutton button[type="roll"].btn {
padding: 5px 10px;
justify-self: end;
margin-top: -5px;
}
select.sheet-difficulty {
width: 100px;
justify-self: end;
}
label.sheet-extradice {
font-weight: bold;
font-size: 1.2em;
width: auto;
justify-self: end;
}
label.sheet-extradice input[type="number"] {
font-size: 1em;
font-weight: bold;
}
/* Active beats */
.sheet-beats {
grid-area: beats;
}
.sheet-beats .sheet-reprow {
grid-template-columns: auto 1fr 80px;
align-items: flex-start;
}
.sheet-beats label {
height: 24px;
}
.sheet-beats .sheet-auto-expand {
padding: var(--def-padding);
min-height: 24px;
}
/* Equipment and resources */
.sheet-equipment {
grid-area: equipment;
}
.sheet-resources {
grid-area: resources;
}
.sheet-equipment-grid {
grid-template-columns: 1fr 1fr 65px 35px;
align-items: start;
}
.sheet-equipment-grid h4,
.sheet-equipment-grid select,
.sheet-equipment-grid .sheet-auto-expand {
padding: var(--def-padding);
}
.sheet-equipment-grid button[type="roll"].btn {
padding: 2px 0 0 4px;
}
.sheet-equipment-grid .sheet-auto-expand {
min-height: 24px;
}
/* Skills and domains */
.sheet-skills-domains {
grid-area: skills-domains;
grid-template-columns: 1fr 1fr;
align-items: start;
}
.sheet-skills-domains input[type="checkbox"] + span {
margin-right: 4px;;
}
.sheet-skills,
.sheet-domains {
grid-template-columns: 85px 1fr;
align-items: start;
}
.sheet-skills-domains h4 {
text-align: center;
align-self: center;
line-height: 1;
}
.sheet-skills-domains .sheet-auto-expand {
padding: var(--def-padding);
min-height: 24px;
}
.sheet-skill-box {
display: flex;
align-items: center;
text-transform: uppercase;
font-family: "Staatliches", cursive;
font-size: 1.2em;
height: 24px;
}
/* Abilities, Fallout */
.sheet-abilities h3,
.sheet-fallout h3 {
display: flex;
}
.sheet-abilities {
grid-area: abilities;
}
.sheet-abilities .sheet-reprow {
grid-template-columns: 1fr 80px auto;
border-bottom: 2px solid var(--red-color);
}
.sheet-abilities .sheet-auto-expand {
grid-column: span 3;
}
.sheet-fallout {
grid-area: fallout;
}
.sheet-fallout .sheet-reprow {
grid-template-columns: 1fr 90px 90px;
border-bottom: 2px solid var(--red-color);
}
.sheet-fallout .sheet-auto-expand {
grid-column: span 3;
}
/* Notes */
.sheet-notes {
grid-area: notes;
}
.sheet-notes .sheet-auto-expand {
min-height: 46px;
}
.sheet-notes .repcontainer {
grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
grid-gap: var(--small-gap) var(--large-gap);
}
/* Roll template */
.sheet-rolltemplate-heart {
margin: 0 -3px -4px -42px;
position: relative;
font-size: 15px;
line-height: 1.2;
border-radius: 10px;
border: 2px solid black;
padding: 5px;
overflow: hidden;
user-select: none;
cursor: default;
overflow: hidden;
font-family: "Times New Roman", serif;
box-sizing: border-box;
background-repeat: repeat-y;
background-size: 100% auto;
background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Heart-the-City-Beneath-mk2/Heart-bg.png");
display: grid;
grid-template-areas:
"title roll"
"name roll"
"details roll";
grid-template-columns: 1fr auto;
grid-template-rows: auto auto 1fr;
grid-column-gap: 3px;
}
.withoutavatars .sheet-rolltemplate-heart {
margin-left: -12px;
}
.sheet-rolltemplate-heart div {
box-sizing: border-box;
}
.sheet-rolltemplate-heart .sheet-title {
color: #a00a03;
font-size: 1.2em;
letter-spacing: 0.5px;
}
.sheet-rolltemplate-heart .sheet-name {
font-size: 1.1em;
letter-spacing: 0.5px;
grid-area: name;
}
.sheet-rolltemplate-heart .sheet-roll {
grid-area: roll;
align-self: center;
justify-self: center;
border: 2px solid black;
border-radius: 10px;
min-width: 40px;
min-height: 40px;
max-width: 80px;
text-align: center;
padding: 5px;
font-size: 0.9em;
}
.sheet-rolltemplate-heart .sheet-main-roll {
font-size: 1.1em;
}
.sheet-rolltemplate-heart .inlinerollresult {
border: none !important;
background-color: transparent;
font-weight: bold;
padding: 0 3px 0 0;
font-size: 1.2em;
}
.sheet-rolltemplate-heart .sheet-main-roll .inlinerollresult {
font-size: 1.6em;
}
.sheet-rolltemplate-heart .sheet-details {
grid-column: span 2;
font-size: .9em;
}