forked from GitHub-Mirrors/foundry-sw5e
709 lines
16 KiB
Text
709 lines
16 KiB
Text
@import "./variables.less";
|
||
|
||
@navHeight: 30px;
|
||
@headerHeight: 100px;
|
||
@detailsHeight: 40px;
|
||
|
||
/* ----------------------------------------- */
|
||
/* All SW5e Apps */
|
||
/* ----------------------------------------- */
|
||
|
||
.sw5e {
|
||
.window-content {
|
||
font-size: 13px;
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Element Styles */
|
||
/* ----------------------------------------- */
|
||
|
||
// Item Sheet form fields
|
||
input[type="text"],
|
||
input[type="number"],
|
||
select {
|
||
height: calc(100% - 2px);
|
||
border: 1px solid @colorTan;
|
||
background: rgba(0, 0, 0, 0.05);
|
||
color: @colorDark;
|
||
}
|
||
|
||
// Hovered Fields
|
||
input[type="text"],
|
||
input[type="number"] {
|
||
&:hover,
|
||
&:focus {
|
||
border: 1px solid #111;
|
||
box-shadow: 0 0 8px red;
|
||
}
|
||
}
|
||
|
||
// Disabled Fields
|
||
input:disabled,
|
||
select:disabled,
|
||
textarea:disabled {
|
||
color: @colorOlive;
|
||
border: 1px solid transparent !important;
|
||
outline: none !important;
|
||
&:hover,
|
||
&:focus {
|
||
box-shadow: none !important;
|
||
border: 1px solid transparent !important;
|
||
outline: none !important;
|
||
}
|
||
}
|
||
|
||
// Buttons
|
||
button {
|
||
background: rgba(0, 0, 0, 0.1);
|
||
border: @borderGroove;
|
||
}
|
||
|
||
/* Form Groups */
|
||
.form-group {
|
||
label {
|
||
flex: 2;
|
||
color: @colorOlive;
|
||
font-weight: bold;
|
||
}
|
||
.form-fields {
|
||
.flexrow();
|
||
> * {
|
||
margin: 0 3px 0 0;
|
||
&:last-child {
|
||
margin-right: 0;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
// Stacked Groups
|
||
.form-group.stacked {
|
||
> label {
|
||
flex: 0 0 100%;
|
||
margin: 0;
|
||
}
|
||
label.checkbox,
|
||
label.radio {
|
||
flex: auto;
|
||
text-align: left;
|
||
}
|
||
}
|
||
|
||
// Form Headers
|
||
.form-header {
|
||
margin: 0 0 0.25em 0;
|
||
padding: 2px 0;
|
||
border-top: @borderGroove;
|
||
border-bottom: @borderGroove;
|
||
.russoOne();
|
||
}
|
||
|
||
/* Tags */
|
||
.tag {
|
||
display: inline-block;
|
||
margin: 0 2px 0 0;
|
||
padding: 0 3px;
|
||
font-size: 10px;
|
||
line-height: 16px;
|
||
border: 1px solid #999;
|
||
border-radius: 3px;
|
||
background: rgba(0, 0, 0, 0.05);
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Hit Dice Config Sheet Specifically */
|
||
/* ----------------------------------------- */
|
||
|
||
.sw5e.hd-config {
|
||
.form-group {
|
||
button.increment,
|
||
button.decrement {
|
||
flex: 0 0 1rem;
|
||
line-height: 1rem;
|
||
}
|
||
|
||
button.decrement {
|
||
margin-right: 0;
|
||
}
|
||
|
||
span.sep {
|
||
margin: 0;
|
||
}
|
||
|
||
input {
|
||
flex: 0 0 2rem;
|
||
text-align: center;
|
||
margin-left: 2px;
|
||
margin-right: 2px;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Entity Sheets Specifically */
|
||
/* ----------------------------------------- */
|
||
|
||
.sw5e.sheet {
|
||
.window-content {
|
||
overflow-y: hidden;
|
||
padding: 5px;
|
||
background: @sheetBackground;
|
||
font-size: 13px;
|
||
color: @colorDark;
|
||
|
||
form {
|
||
height: 100%;
|
||
overflow: hidden;
|
||
}
|
||
|
||
.tab {
|
||
height: 100%;
|
||
overflow-y: auto;
|
||
align-content: flex-start;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Element Styles */
|
||
/* ----------------------------------------- */
|
||
|
||
// Input Fields
|
||
input[type="text"],
|
||
input[type="number"] {
|
||
background: none;
|
||
border: 1px solid transparent;
|
||
&:hover,
|
||
&:focus {
|
||
border: 1px solid #111;
|
||
}
|
||
}
|
||
|
||
// Select Fields
|
||
select {
|
||
flex: 1;
|
||
font-size: 12px;
|
||
height: 22px;
|
||
background: transparent;
|
||
}
|
||
|
||
// Rollable Titles
|
||
.editable .rollable:hover {
|
||
cursor: pointer;
|
||
}
|
||
.editable h4.rollable:hover,
|
||
.editable .rollable:hover > h4 {
|
||
color: #000;
|
||
text-shadow: 0 0 10px red;
|
||
}
|
||
|
||
// Separators
|
||
span.sep {
|
||
flex: none;
|
||
margin: 0 1px;
|
||
display: inline;
|
||
position: relative;
|
||
color: @colorTan;
|
||
font-weight: normal;
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* TinyMCE */
|
||
/* ----------------------------------------- */
|
||
|
||
.editor {
|
||
height: 100%;
|
||
.tox-toolbar-overlord,
|
||
.tox-toolbar__primary {
|
||
background: none;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Notifications */
|
||
/* ----------------------------------------- */
|
||
|
||
.warnings,
|
||
.info {
|
||
flex: 0 0 100%;
|
||
margin: 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
|
||
.notification {
|
||
font-family: "Signika", sans-serif;
|
||
font-weight: normal;
|
||
font-size: 13px;
|
||
box-shadow: none;
|
||
padding: 2px 8px;
|
||
margin-bottom: 2px;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Sheet Header */
|
||
/* ----------------------------------------- */
|
||
|
||
.sheet-header {
|
||
flex: 0 0 @headerHeight;
|
||
border-bottom: @borderGroove;
|
||
|
||
.header-details {
|
||
.russoOne();
|
||
|
||
.summary select {
|
||
width: 100%;
|
||
height: 100%;
|
||
border: 0;
|
||
|
||
.russoOne();
|
||
text-transform: capitalize;
|
||
font-weight: 100;
|
||
}
|
||
}
|
||
|
||
/* Character Name */
|
||
h1 {
|
||
flex: 1;
|
||
border-bottom: none;
|
||
height: 60px;
|
||
margin: 0;
|
||
padding: 5px;
|
||
|
||
input {
|
||
display: block;
|
||
height: 50px;
|
||
font-size: 32px;
|
||
margin: 0;
|
||
}
|
||
}
|
||
|
||
/* Profile Image */
|
||
img.profile {
|
||
flex: 0 0 @headerHeight;
|
||
max-width: @headerHeight;
|
||
height: @headerHeight;
|
||
object-fit: contain;
|
||
border: none;
|
||
border-right: @borderGroove;
|
||
}
|
||
|
||
/* Header Summary Details */
|
||
.summary {
|
||
flex: 0 0 100%;
|
||
height: @detailsHeight;
|
||
margin: 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
border-top: @borderGroove;
|
||
border-bottom: none;
|
||
|
||
li {
|
||
height: calc(100% - 6px);
|
||
float: left;
|
||
margin: 2px 0;
|
||
padding: 0;
|
||
border-right: @borderGroove;
|
||
line-height: 34px;
|
||
color: @colorOlive;
|
||
|
||
&:last-child {
|
||
border-right: none;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Sheet Navigation */
|
||
/* ----------------------------------------- */
|
||
|
||
.sheet-navigation {
|
||
flex: 0 0 @navHeight;
|
||
margin-bottom: 5px;
|
||
.russoOne(14px);
|
||
|
||
.item {
|
||
height: 30px;
|
||
line-height: 32px;
|
||
margin: 0 24px;
|
||
border-bottom: 3px solid @colorBeige;
|
||
|
||
&.active {
|
||
border-bottom: 3px solid @colorCrimson;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Sheet Body */
|
||
/* ----------------------------------------- */
|
||
|
||
.sheet-body {
|
||
flex: 1;
|
||
overflow: hidden;
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* List Filters */
|
||
/* ----------------------------------------- */
|
||
|
||
.filter-list {
|
||
align-items: center;
|
||
list-style: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
line-height: 16px;
|
||
max-width: 70%;
|
||
|
||
.filter-icon {
|
||
flex: none;
|
||
font-size: 14px;
|
||
color: @colorTan;
|
||
}
|
||
|
||
.filter-item {
|
||
text-align: center;
|
||
font-size: 12px;
|
||
margin: 0 6px 0 0;
|
||
border-bottom: 3px solid @colorBeige;
|
||
white-space: nowrap;
|
||
|
||
&:last-child {
|
||
margin: 0;
|
||
}
|
||
|
||
&:hover {
|
||
text-shadow: 0 0 4px red;
|
||
border-bottom: 3px solid @colorTan;
|
||
}
|
||
|
||
&.active {
|
||
border-bottom: 3px solid @colorCrimson;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Trait Lists */
|
||
/* ----------------------------------------- */
|
||
|
||
.traits {
|
||
margin: 5px 0 0;
|
||
|
||
.trait-selector,
|
||
.proficiency-selector {
|
||
flex: 0 0 16px;
|
||
padding: 2px 0;
|
||
color: #999;
|
||
font-size: 10px;
|
||
}
|
||
|
||
.traits-list {
|
||
flex: 0 0 100%;
|
||
line-height: 20px;
|
||
list-style: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Items Lists */
|
||
/* ----------------------------------------- */
|
||
|
||
.items-list {
|
||
list-style: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
overflow-y: auto;
|
||
scrollbar-width: thin;
|
||
color: @colorTan;
|
||
|
||
// Child lists
|
||
.item-list {
|
||
list-style: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
}
|
||
|
||
// Item Name
|
||
.item-name {
|
||
flex: 2;
|
||
margin: 0;
|
||
overflow: hidden;
|
||
font-size: 13px;
|
||
text-align: left;
|
||
align-items: center;
|
||
h3,
|
||
h4 {
|
||
margin: 0;
|
||
white-space: nowrap;
|
||
overflow-x: hidden;
|
||
}
|
||
}
|
||
|
||
// Control Buttons
|
||
.item-controls {
|
||
flex: 0 0 60px;
|
||
justify-content: space-between;
|
||
a {
|
||
font-size: 12px;
|
||
text-align: center;
|
||
}
|
||
}
|
||
// Individual Item
|
||
.item {
|
||
align-items: center;
|
||
padding: 0 2px; // to align with the header border
|
||
border-bottom: 1px solid @colorFaint;
|
||
&:last-child {
|
||
border-bottom: none;
|
||
}
|
||
|
||
.item-name {
|
||
color: @colorDark;
|
||
.item-image {
|
||
flex: 0 0 30px;
|
||
height: 30px;
|
||
background-size: 30px;
|
||
border: none;
|
||
margin-right: 5px;
|
||
}
|
||
}
|
||
}
|
||
|
||
// Section Header
|
||
.items-header {
|
||
height: 28px;
|
||
margin: 2px 0;
|
||
padding: 0;
|
||
align-items: center;
|
||
background: rgba(0, 0, 0, 0.05);
|
||
border: @borderGroove;
|
||
font-weight: bold;
|
||
> * {
|
||
font-size: 12px;
|
||
text-align: center;
|
||
}
|
||
h3 {
|
||
padding-left: 5px;
|
||
//.modesto();
|
||
text-align: left;
|
||
font-size: 16px;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Active Effects */
|
||
/* ----------------------------------------- */
|
||
|
||
.effects .item {
|
||
.effect-source,
|
||
.effect-duration,
|
||
.effect-controls {
|
||
text-align: center;
|
||
border-left: 1px solid @colorFaint;
|
||
border-right: 1px solid @colorFaint;
|
||
font-size: 12px;
|
||
}
|
||
.effect-controls {
|
||
border: none;
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Trait Selector
|
||
/* ----------------------------------------- */
|
||
|
||
.trait-selector {
|
||
.trait-list {
|
||
list-style: none;
|
||
margin: 0;
|
||
padding: 0;
|
||
|
||
li ol.trait-list {
|
||
margin-left: 1.5em;
|
||
}
|
||
}
|
||
|
||
input[type="text"] {
|
||
height: 24px;
|
||
margin: 2px;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Property Attribution */
|
||
/* ----------------------------------------- */
|
||
|
||
.property-attribution {
|
||
display: none;
|
||
position: absolute;
|
||
padding: 3px;
|
||
border: 1px solid #000;
|
||
border-radius: 3px;
|
||
background-color: rgba(0, 0, 0, 0.8);
|
||
backdrop-filter: blur(4px);
|
||
color: @colorFaint;
|
||
text-align: left;
|
||
z-index: 1;
|
||
|
||
table {
|
||
margin: 0;
|
||
border: 0;
|
||
tr {
|
||
background-color: inherit;
|
||
}
|
||
td {
|
||
padding: 3px;
|
||
}
|
||
tr.total > td {
|
||
font-weight: 600;
|
||
padding-top: 5px;
|
||
border-top: 1px solid @colorTan;
|
||
}
|
||
td.attribution-value {
|
||
width: 20%;
|
||
padding-right: 5px;
|
||
text-align: right;
|
||
font-weight: 600;
|
||
}
|
||
|
||
// Arithmetic Operators
|
||
td::before {
|
||
opacity: 0.6;
|
||
}
|
||
td.mode-1::before {
|
||
// Multiply
|
||
content: "×";
|
||
}
|
||
td.mode-2::before {
|
||
// Add
|
||
content: "+";
|
||
}
|
||
td.mode-2.negative::before {
|
||
// Subtract
|
||
content: "−";
|
||
margin-right: -1px;
|
||
}
|
||
td.mode-3::before {
|
||
// Downgrade
|
||
content: "↓";
|
||
}
|
||
td.mode-4::before {
|
||
// Upgrade
|
||
content: "↑";
|
||
}
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Actor Type Config Sheet Specifically */
|
||
/* ----------------------------------------- */
|
||
|
||
.actor-type {
|
||
.trait-list {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
li {
|
||
flex-basis: 50%;
|
||
flex-grow: 1;
|
||
}
|
||
li.form-group {
|
||
flex-basis: 100%;
|
||
}
|
||
}
|
||
label.radio {
|
||
display: flex;
|
||
flex: auto;
|
||
font-size: 12px;
|
||
line-height: 20px;
|
||
font-weight: normal;
|
||
> input[type="radio"] {
|
||
margin: 0 5px 0 0;
|
||
}
|
||
}
|
||
li.custom-type input[type="radio"] {
|
||
display: none;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Armor Config Sheet Specifically */
|
||
/* ----------------------------------------- */
|
||
|
||
.sw5e.actor-armor-config {
|
||
.ac-field input {
|
||
font-size: 3em;
|
||
text-align: center;
|
||
}
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* Add Feature Prompt Specifically */
|
||
/* ----------------------------------------- */
|
||
|
||
.sw5e.select-items-prompt {
|
||
.dialog-content {
|
||
margin-bottom: 1em;
|
||
}
|
||
|
||
.items-list {
|
||
margin-top: 0.5em;
|
||
}
|
||
|
||
.item-name > label,
|
||
.item-image,
|
||
input {
|
||
cursor: pointer;
|
||
}
|
||
|
||
.item-name > label {
|
||
align-items: center;
|
||
}
|
||
|
||
.window-content {
|
||
max-height: 90vh;
|
||
overflow-y: auto;
|
||
}
|
||
|
||
/* ----------------------------------------- */
|
||
/* HUD
|
||
/* ----------------------------------------- */
|
||
|
||
.placeable-hud .control-icon {
|
||
box-sizing: content-box;
|
||
width: 40px;
|
||
flex: 0 0 40px;
|
||
margin: 8px 0;
|
||
font-size: 28px;
|
||
line-height: 40px;
|
||
text-align: center;
|
||
color: #fbf4f4;
|
||
background: rgba(0, 0, 0, 0.6);
|
||
box-shadow: 0 0 15px #000;
|
||
border: 1px solid #333;
|
||
border-radius: 8px;
|
||
pointer-events: all;
|
||
}
|
||
#token-hud .status-effects {
|
||
visibility: hidden;
|
||
position: absolute;
|
||
left: 50px;
|
||
top: 0;
|
||
display: grid;
|
||
padding: 3px;
|
||
box-sizing: content-box;
|
||
width: 100px;
|
||
color: #fbf4f4;
|
||
grid-template-columns: 25px 25px 25px 25px;
|
||
background: rgba(0, 0, 0, 0.6);
|
||
box-shadow: 0 0 15px #000;
|
||
border: 1px solid #333;
|
||
border-radius: 4px;
|
||
pointer-events: all;
|
||
}
|
||
}
|