Files
roll20-character-sheets-tester/Shadowrun5thEdition/Shadowrun5thEdition.scss
T
Cassie Levett a25814f97e Shadworun 5th Edition 3.02 (#5667)
* Make the logo smaller

* Set theme jekyll-theme-time-machine

* Set theme jekyll-theme-time-machine

* bug fixes'

* refactor qualities

* fix augmentation

* move javascript

* Delete _config.yml
2019-11-11 12:41:52 -06:00

938 lines
22 KiB
SCSS

//- Colors:
$gold: #FCD116;
$red: #610b0d;
$purple: #7a2593;
$lightgray: #9a9a9a;
$graytrans: rgba(28, 28, 28, 0.14902);
$grayshadow: #7c7c7c;
$blacker: #040404;
$ccc: #cccccc;
//- GRAY IN ROLL TEMPLATE
$blackish: #1c1c1c;
//-(primaryly on the NPC sheet)
$gray: #555;
$blacker: #040404;
$white: #fff;
/********************************************************************************************************/
/********************************* GLOBAL SETTINGS *******************************************************/
/********************************************************************************************************/
/* GLOBALS
============================= */
@import 'src/scss/_global';
/* SWITCHES
============================= */
@import 'src/scss/_switch';
/* MIXIN
============================= */
@mixin repeatingInformation($endColumn, $longCollapseFlag) {
label[data-i18n-title='notes'],
h3[data-i18n='notes'],
div.sheet-collapse {
grid-column: 1 / #{$endColumn};
}
input.sheet-collapse-flag {
@if $longCollapseFlag {
grid-area: 1 / 1 / 1 / #{$endColumn - 1};
position: absolute;
width: 100%;
} @else {
grid-area: 1 / #{$endColumn - 2} / 1 / #{$endColumn - 1};
}
}
input.sheet-collapse-flag + span.sheet-pictos {
grid-area: 1 / #{$endColumn - 2} / 1 / #{$endColumn - 1};
}
input.sheet-settings-flag,
input.sheet-settings-flag + span.sheet-pictos {
grid-area: 1 / #{$endColumn - 1} / 1 / #{$endColumn};
}
}
/***** TABS FOR SHEETS *****/
.sheet-tabs {
button {
&[type='action'] {
background-color: #333;
border-radius : 2px;
border : 1px solid #000;
box-shadow : inset 0px 0px 3px 1px #7c7c7c;
color : #fff;
font-size : 1em;
font-weight : bolder;
text-transform : capitalize;
padding : 5px;
&.sheet-pictos {text-transform: lowercase;}
}
&[type='roll'] {
background: none;
border: none;
color : #fff;
font-family : 'dicefontd6';
font-size : 2.5em;
vertical-align: top;
&:hover {
text-shadow: 1px 1px 2px black, 0 0 25px red, 0 0 5px #e31715;
}
}
}
h2 {
color: #fff;
font-size: 1em;
text-transform: capitalize;
text-align: right;
line-height: 2em;
margin-right: 5%;
}
}
/***** TABS FOR SHEETS *****/
.sheet-settings-toggle,
.sheet-settings-flag {
input { width: 3em;}
input[type='checkbox'] + span {
background : transparent;
@extend .sheet-pictos;
font-size : 20px;
height : 20px;
text-align : center;
width : 20px;
}
}
/***** GENERIC STYLES *****/
%parantheseNumbers {
vertical-align: middle;
&:before { content: '('; }
&:after { content: ')'; }
}
%toggleCheckbox,
input.sheet-toggle {
position: absolute;
opacity: 0;
z-index: 2;
}
%toggleRelative {
position: relative;
opacity: 0;
z-index: 2;
}
%settingsCheckboxes {
& + span { opacity: 0; }
&:checked + span { opacity: 1; }
&:checked ~ .sheet-settings {
display: inline-grid;
margin-bottom: 2%;
}
}
%borderBottom { border-bottom: 1px solid #333; }
.sheet-center { text-align: center; }
select {
&.sheet-attribute-select {
option:nth-of-type(1n+5) { color: $red; }
option:nth-of-type(1n+9) { color: #7a2593; }
}
&.sheet-limit-select {
option:nth-of-type(1n+5) { color: $red; }
}
}
@import 'src/scss/_matrixdevice';
/***** GRID *****/
%gridGap {
grid-column-gap: 1%;
grid-row-gap: 1%;
}
/******************************************************************************/
/********************************* VARIABLES *********************************/
/****************************************************************************/
$tabs:'arms', 'augs', 'core', 'gear', 'options', 'social', 'magic', 'matrix', 'vehicle';
$characterTypes: 'npc', 'pc';
$specialCharacters: 'magic', 'resonance';
$npcTypes: 'grunt', 'host', 'sprite', 'vehicle';
/***************************************************************************************/
/************************** START OF THE PC SHEET *************************************/
/*************************************************************************************/
.sheet-pc {
background-color: #333;
background-image: url('https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Shadowrun5thEdition/images/Blackbackground.jpg');
background-size : cover;
border : 3px solid;
box-shadow : inset 0px 0px 3px 1px #7c7c7c;
margin-left : -1%;
padding-left : 0.5%;
button > h2:hover,
button > span:hover,
label > button[type='roll']:hover,
.sheet-repeat-box button[type='roll']:hover,
.sheet-con-track button[type='action']:hover,
button[data-i18n='default']:hover {
color : #fff;
text-shadow: 1px 1px 2px black, 0 0 25px red, 0 0 5px $red;
}
h1 {
background-color: $red;
color : #fff;
font-size : 1em;
letter-spacing : 2px;
line-height : 20px;
padding-left : 5px;
padding-right : 5px;
text-transform : uppercase;
}
h2 {
font-size : 0.9em;
line-height: 25px;
text-transform: capitalize;
@extend %display-inline-grid;
}
h3 {
color : hsla(0, 0%, 20%, 0.59);
font-size: 0.8em;
text-transform: capitalize;
@extend %display-inline-grid;
}
hr { margin: 7px 0px -2px 0px; }
input {
border-radius: 0px;
}
.sheet-tabs {
@extend %display-inline-grid;
grid-template-columns: 1fr 5em 1fr 5em 2.5em 5em 5em 5em 5em 5em 5em 5em;
grid-column-gap: 0.25%;
padding: 0px 1% 3% 1%;
margin-top: 1%;
grid-row-gap: 10%;
button[type='roll'] {grid-area: 2 / 5 / 2 / 5;}
/***** PLAYER DATA INPUTS *****/
h1 {
background-color: transparent;
color: #fff;
display: inline-block;
font-size : 1em;
grid-column: 6 / 8;
letter-spacing: 2px;
line-height : 20px;
margin-left: 5%;
text-align: right;
text-transform : uppercase;
}
h2 {
&[data-i18n-title='/w GM'] { grid-area: 2 / 1 / 2 / 1; }
&[data-i18n-title='wounds'] { grid-area: 2 / 3 / 2 / 4; }
&[data-i18n-title='modifiers'] { grid-area: 3 / 1 / 3 / 1; }
&[data-i18n-title='edge'] { grid-area: 3 / 3 / 3 / 4; }
}
@each $highlightButton in $tabs {
input[value*='#{$highlightButton}'] ~ button[name*='#{$highlightButton}'] {
@extend %highlight-button;
}
}
img {
grid-area: 1 / 1 / 2 / 6;
height: 100%;
width: 100%;
}
label {
&[data-i18n-title='character name'] > input[type='text'],
&[data-i18n-title='player name'] > input[type='text'] {
color : #fff;
font-weight : bolder;
background-color: transparent;
border : none;
box-shadow : none;
border-bottom : 2px solid #fff;
border-radius : 0px;
height : 30px;
width : 100%;
grid-column: 4;
}
&[data-i18n-title='character name'] { grid-area: 1 / 8 / 1 / 14; }
&[data-i18n-title='player name'] { grid-area: 2 / 8 / 2 / 14; }
&[data-i18n-title='whisper rolls to gm']{ grid-area: 2 / 2 / 2 / 3; }
&[data-i18n-title='wounds'] { grid-area: 2 / 4 / 2 / 5;}
&[data-i18n-title='modifiers'] { grid-area: 3 / 2 / 3 / 3;}
&[data-i18n-title='edge'] { grid-area: 3 / 4 / 3 / 5;}
}
}
input.sheet-settings-toggle,
input.sheet-settings-flag,
input.sheet-collapse-flag,
input[type='radio'] {
@extend %toggleRelative;
& + span { font-family: 'pictos'; }
&:checked + span { color: $red; }
}
select {
height: 1.8em;
padding: 0px;
color: $blacker;
}
div.sheet-core-info {
h2{ margin-right: 1%; }
input[type='text'], input[type='number'] {
background-color: transparent;
border: none;
&:placeholder-shown {
background-color: $graytrans;
}
}
}
input.sheet-display-flag { position: absolute; }
/***** DECORATIVE BOX THAT ADDS THE RED OUTLINE ON PC SHEET *****/
div.sheet-border-box {
background-image: -moz-linear-gradient($red, transparent), -moz-linear-gradient($red, transparent);
background-image: -o-linear-gradient($red, transparent), -o-linear-gradient($red, transparent);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($red), to(transparent));
background-image: -webkit-linear-gradient($red, transparent);
background-image: linear-gradient($red, transparent), linear-gradient($red, transparent);
border-top : 2px solid $red;
clear : both;
border-top-right-radius: 10px;
border-top-left-radius : 0px;
button[type='roll'] {
font-size: 0.8em;
font-weight: bold;
}
div.sheet-pc-box {
border-top-right-radius: 10px;
border-top-left-radius : 0px;
}
}
/***** REPEATING CONTAINERS *****/
div.sheet-repeating-container {
div.repitem {
display: inline-grid;
padding: 1% 0.5%;
margin-bottom: 0px;
@extend %gridGap;
@extend %borderBottom;
button[type='roll'] {
text-align: left;
}
input {
&:nth-of-type(1n+2) { text-align: center; }
&[type='text'],
&[type='number'] {
@extend %borderBottom;
width: 100%;
}
}
label {
padding-right: 0px;
input[name='attr_name'],
input[name='attr_weapon'],
input[name='attr_quality'] {
text-align: left;
}
&[data-i18n-title='modifier'] {
width: 3em;
}
}
div.sheet-settings {
background-color: $ccc;
border-left: 2px solid $gray;
@extend %gridGap;
padding: 2% 1%;
width: 100%;
select { text-transform: capitalize; }
}
div.sheet-collapse { padding-left: 5%; }
}
}
div.repitem {
width: 100%;
input[type='number'] { text-align: center; }
}
/***** STATIC *****/
div.sheet-static {
margin-right: 0.5%;
div.sheet-border-box,
div.sheet-border-box .sheet-pc-box {
border-top-right-radius: 0px;
border-top-left-radius : 10px;
}
}
/***** CORE *****/
div.sheet-core {
div.sheet-armor-buttons {
display : inline-block;
font-size : 1.5em;
line-height: 20px;
margin-left: 1%;
width : 35%;
button {
&[type='roll'] { margin-right: -5px; }
&[name='roll_defense'] {
background-color: $gray;
color: $white;
}
}
span { font-size : 1em; }
}
/***** QUALITIES *****/
div.sheet-quality-box {
div.sheet-htab input[type='radio'] {
margin-right: -100px;
width : 100px;
}
div.sheet-header:nth-of-type(2) .sheet-htab input[type='radio'] {
margin-right: -150px;
width : 150px;
}
div.sheet-quality {
$qualityGrid: 1fr 3em 1.5em 1em 1em;
h2:nth-of-type(2) { text-align: center; }
div.sheet-headers {
display: grid;
grid-template-columns: $qualityGrid;
@extend %gridGap;
}
div.repitem {
grid-template-columns: $qualityGrid;
@include repeatingInformation(6, false);
div.sheet-settings {
grid-column: 1 / 6;
grid-template-columns: $qualityGrid;
}
}
}
div.sheet-martial {
$martialGrid: 2fr 1fr 1.5em 1em 1em;
h2:nth-of-type(2) { text-align: center; }
div.sheet-headers {
display: grid;
grid-template-columns: $martialGrid;
@extend %gridGap;
}
div.repitem {
grid-template-columns: $martialGrid;
@include repeatingInformation(6, false);
div.sheet-settings {
grid-column: 1 / 6;
grid-template-columns: $martialGrid;
}
}
}
}
}
/***** SKILLS *****/
div.sheet-skill-box {
$skillGrid: 1fr 3.5em 5em 5em 1em 1em;
h2:nth-of-type(1n+2) { text-align: center; }
label {
display : inline-block;
font-size : 0.8em;
text-transform: capitalize;
&[data-i18n-title='ratingmodifier'] {
grid-area: 1 / 3 / 1 / 7;
width: 100%;
input[type='number'] { width: 3em; }
}
&[data-i18n-title='specialization'] { grid-area: 3 / 1 / 3 / 7; }
&[data-i18n-title='notes'], textarea { grid-area: 4 / 1 / 4 / 7; }
& > input {
@extend %borderBottom;
text-align: left;
border-radius: 0px;
width: 100%;
}
}
input[name='attr_skill'] { @extend %borderBottom; }
input[name='attr_rating_modifier'] { width: 3.5em; }
input[name='attr_display_specialization'][value=' '] ~ div.sheet-buttons button[name*='specialization'],
input[name='attr_display_specialization'][value=''] ~ div.sheet-buttons button[name*='specialization'] { @extend %display-none; }
div.sheet-row-long {
grid-template-columns: $skillGrid;
padding: 1% 0.5%;
width: 100%;
@extend %display-inline-grid;
@extend %gridGap;
h3:nth-of-type(1n+2) { text-align: center; }
}
div.repitem {
grid-template-columns: $skillGrid;
@include repeatingInformation(7, false);
input[name='attr_damage'],
input[name='attr_dicepool_modifier'] {
width: 3.5em;
}
div.sheet-settings {
grid-column: 1 / 7;
grid-template-columns: $skillGrid;
}
}
}
/*** ARMS ****/
div.sheet-arms {
div.sheet-headers {
display: grid;
@extend %gridGap;
h2:nth-of-type(1n+2) { text-align: center; }
}
div.repitem {
h3 { color: $blacker; }
input {
&:nth-of-type(1n+2) { text-align: center; }
&.sheet-flag-primary[value='primary'] + button {
background-color: $gold;
border-bottom: 2px solid $blacker;
}
}
}
div.sheet-weapons {
$weaponsGrid: 25% 1.25fr 3em 2.5em 3em 1fr 1fr 1em 1em;
div.sheet-headers { grid-template-columns:$weaponsGrid; }
div.repitem {
grid-template-columns: $weaponsGrid;
@include repeatingInformation(10, false);
div.sheet-settings {
grid-column: 1 / 10;
grid-template-columns: $weaponsGrid;
}
}
div.sheet-weapon-range,
div.sheet-weapon-melee {
width: 100%;
div.sheet-row {
grid-column: 1 / 9;
label[data-i18n-title="modeoptions"],
label[data-i18n-title="range"]{
width: 25%;
}
input[type='number'] {width: 3em;}
select {width: 30%;}
};
div.sheet-exotic-warning { display: none; }
input[value='0'] + div.sheet-exotic-warning { display: block; }
}
}
div.sheet-armor {
$armorGrid: 30% 3.5em 2.5em 2.5em 2.5em 2.5em 2.5em 1em 1em;
div.sheet-headers { grid-template-columns:$armorGrid; }
div.repitem {
grid-template-columns: $armorGrid;
@include repeatingInformation(11, false);
div.sheet-settings {
grid-column: 1 / 11;
grid-template-columns: $armorGrid;
div.sheet-row {
grid-column: 1 / 11;
}
}
}
}
}
/*** AUGS ****/
div.sheet-augs {
$augsGrid: 1fr 5em 5em 1em 1em;;
div.sheet-headers {
display: grid;
grid-template-columns:$augsGrid;
}
div.repitem {
grid-template-columns: $augsGrid;
@include repeatingInformation(6, true);
input[name='attr_augementation'] { text-align: left; }
div.sheet-settings {
grid-column: 1 / 6;
grid-template-columns: $augsGrid;
}
}
}
/*** GEAR ****/
div.sheet-gear {
$gearGrid: 1fr 5em 5em 1em 1em;;
div.sheet-headers {
display: grid;
grid-template-columns:$gearGrid;
}
div.repitem {
grid-template-columns: $gearGrid;
@include repeatingInformation(6, true);
input[name='attr_item'] { text-align: left; }
div.sheet-settings {
grid-column: 1 / 6;
grid-template-columns: $gearGrid;
}
}
}
/***** MAGIC *****/
div.sheet-magic {
$magicGrid: 30% 1.5fr 1.5fr 2fr 2em 1em 1em;
input.sheet-magic-toggle[value='rituals'] ~ .sheet-headers h2:nth-of-type(1n+2) {
@extend %display-none;
}
h2:nth-of-type(1n+2) { text-align: center; }
h3 { color: $blacker; }
div.sheet-headers {
display: grid;
@extend %gridGap;
grid-template-columns:$magicGrid;
h3:nth-of-type(1n+2) { text-align: center; }
}
/***** SPELLS & PREPARTATIONS *****/
div.sheet-spellsForumlas {
div.repitem {
grid-template-columns: $magicGrid;
@include repeatingInformation(8, false);
input[name='attr_damage'],
input[name='attr_dicepool_modifier'] {
width: 3.5em;
}
select[name='attr_category'] { grid-row: 2; }
div.sheet-row { grid-column: 1 / 6; }
div.sheet-settings {
grid-column: 1 / 8;
grid-template-columns: $magicGrid;
}
}
}
/***** RITUALS *****/
div.sheet-magic-rituals {
$ritualsGrid: 1fr 1em 1em;
@include repeatingInformation(4, false);
div.repitem {
grid-template-columns: $ritualsGrid;
label {
&[data-i18n-title='name'] { grid-column: 1 / 4; }
}
div.sheet-row { grid-column: 1 / 4; }
}
div.sheet-settings {
grid-template-columns: $ritualsGrid;
grid-column: 1 / 4;
}
}
div.sheet-magic-preps, div.sheet-magic-spells {
textarea { width: 93%; }
}
/***** PREPARATIONS *****/
div.sheet-magic-preps {
/* READIED PREPARATIONS */
div.sheet-prepared-preparations {
$preparationsGrid: 40% 1fr 1fr 2fr 1em 1em;
div.sheet-headers {
grid-template-columns:$preparationsGrid ;
}
div.repitem {
grid-template-columns: $preparationsGrid ;
@include repeatingInformation(7, false);
div.sheet-settings {
grid-column: 1 / 7;
grid-template-columns: $preparationsGrid;
select { grid-column: 4 / 7; }
textarea { width: 100%; }
}
}
}
}
/***** ADEPT POWERS *****/
div.sheet-powers {
$powersGrid: 1fr 3em 1em 1em;;
div.sheet-headers {
grid-template-columns:$powersGrid;
}
div.repitem {
grid-template-columns: $powersGrid;
@include repeatingInformation(5, true);
div.sheet-settings {
grid-column: 1 / 5;
grid-template-columns: $powersGrid;
}
}
}
}
/*** MATRIX ****/
div.sheet-matrix {
h3 { color: $blacker; }
div.sheet-programs {
$programGrid: 1fr 1em 1em;
div.repitem {
grid-template-columns: $programGrid;
@extend %borderBottom;
@include repeatingInformation(4, true);
}
div.sheet-settings {
grid-column: 1 / 4;
input[type='text'] {
grid-column: 1 / 4;
text-align: left;
}
label {
grid-column: 1 / 4;
}
}
}
div.sheet-complex-forms {
$complexFormsGrid: 30% 1fr 1fr 4em 1em 1em;
div.sheet-headers {
display: grid;
@extend %gridGap;
grid-template-columns: $complexFormsGrid;
h2:nth-of-type(1n+2) { text-align: center; }
}
div.repitem {
grid-template-columns: $complexFormsGrid;
@include repeatingInformation(7, false);
div.sheet-row {
grid-column: 1 / 7;
}
div.sheet-settings {
grid-column: 1 / 7;
grid-template-columns: $complexFormsGrid;
}
}
}
}
}
@import 'src/scss/_pc';
/******************************************************************************************/
/**************************** START OF THE NPC SHEET *************************************/
/****************************************************************************************/
@import 'src/scss/_npc';
/**************************************************************************/
/***************** PC & NPC SHEET SHOW & HIDE SETTINGS *******************/
/************************************************************************/
/* DISPLAY SETTINGS
============================= */
@import 'src/scss/_hide';
/*****************************************************************************************/
/**************************************** FOOTER ****************************************/
/***************************************************************************************/
/**** Footer ****/
.sheet-footer {
border : none;
font-size : 0.55em;
line-height: 15px;
margin-top : 15px;
text-align : left;
width : 700px;}
div.sheet-footer div {
display: inline-block;
width: 90%;
}
div.sheet-footer img {
float: right;
vertical-align: top;
width: 5%;
}
/********************************************************************************************************/
/**************************************** REPEATING SECTIONS *******************************************/
/********************************************************************************************************/
@import 'src/scss/_repeatingsection';
/********************************************************************************************************/
/**************************************** Roll template *******************************************/
/********************************************************************************************************/
@import 'src/scss/_rolltemplate';
/********************************************************************************************************/
/******************************* Charactermancer ****************************************/
/******************************************************************************************************/
@import 'src/scss/_importer';
/********************************************************************************************************/
/******************************* FireFox *******************************************/
/******************************************************************************************************/
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;}
input[type=number] {
-moz-appearance:textfield;}
/********************************************************************************************/
/***************** French Adjustments ********************************/
/*******************************************************************************************/
@import 'src/scss/_lang-fr';