/*----------------- Main Layout ------------------*/ /* A CSS Grid example using "grid-template-areas" https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas */ /* This is a clever way to redefine our grid area if mech isn't present. Must keep the two aligned or we get nasty spaces! */ input.sheet-space:not(:checked) ~ div > main { grid-template-rows: 40px auto auto 300px auto auto auto auto; grid-template-areas: "settings settings settings settings" "header header header header" "conditions conditions conditions conditions" ". . . portrait" "powers powers powers background" "gear . items background" "loadout loadout loadout background" "notes notes notes background" } main { display: grid; width: 800px; min-height: 1660px; height: auto; grid-gap: 4px; grid-template-columns: 240px 10px 240px 260px; grid-template-rows: 40px auto auto 300px auto auto auto auto auto auto; grid-template-areas: "settings settings settings settings" "header header header header" "conditions conditions conditions conditions" ". . . portrait" "powers powers powers background" "gear . items background" ". . . background" "loadout loadout loadout perks" "mech mech mech mechstats" "notes notes notes mechstats" } /*----------------- GENERAL CSS ------------------*/ main:before { content:""; background-color:#f8f8f8; height:2000px; position: absolute; width: 95%; z-index: -1; } section { padding: 5px; border-style: solid; } /* CSS Flexbox styling, used for adjusting how content inside section behaves */ .f-col { display: flex; flex-direction: column; } .f-row { display: flex; flex-direction: row; } .wrap { display: flex; flex-wrap: wrap; } .nowrap { display: flex; flex-wrap: nowrap; } .f-center { align-items: center; justify-content: center; } /*----------------- Text & Input styling -----------------*/ @import url("https://fonts.googleapis.com/css?family=Lexend|IBM+Plex+Mono:wght@400;700&display=swap"); /* these are for overwriting default CSS that comes from Roll20 */ .charsheet * { font-family: "Lexend"; } .charsheet h3{ text-align: center; } .charsheet label{ margin: 3px; padding: 3px 0 0 0; } .charsheet input[type="text"], input[type="number"]{ margin: 2px 4px; } .charsheet textarea { width: 95%; height: 85%; } /*------------- Section-specific CSS -------------*/ .header { grid-area: header; background-color: #e8e8e9 !important; display: flex; flex-direction: row; gap: 10px; } section.empty { grid-area: empty; } .skill { grid-area: skill; background-color: orange; justify-content: space-evenly; } .tabholder { display: flex; flex-direction: row; justify-content: center; } .tabholder > button { margin-left: 2px; margin-right: 2px; } .powers { grid-area: powers; margin-top: -280px; } .background { grid-area: background; height: fit-content; min-height: 707px; } .loadout { grid-area: loadout; } .mechStuff { display: flex; flex-direction: column; /* gap: 1rem; */ } .outerhot { display: flex; gap: 2em; } h3.hb { margin-bottom: 5px; } /* Heat Level Colors */ .heatlevel { font-weight: bold; margin-right: 5px; margin-top: 5px; } /* Style based on the adjacent input's value */ input.heat-color[value="OVERHEATING"] ~ .heatlevel { background: linear-gradient( 90deg, rgba(247, 0, 0, 1) 0%, rgba(250, 138, 0, 1) 50%, rgba(234, 245, 30, 1) 68%, rgba(255, 255, 255, 1) 93% ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; font-weight: bold; } input.heat-color[value="OVERHEATING"] ~ .heatlevel { background: linear-gradient( 90deg, rgba(247, 0, 0, 1) 0%, rgba(250, 138, 0, 1) 50%, rgba(234, 245, 30, 1) 68%, rgba(255, 255, 255, 1) 93% ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; font-weight: bold; } input.heat-color[value="Hot"] ~ .heatlevel { color: red; } input.heat-color[value="Warm"] ~ .heatlevel { color: orange; } input.heat-color[value="Cool"] ~ .heatlevel { color: blue; } input.heat-color[value="Cold"] ~ .heatlevel { color: gray; } .mechleft, .mechright { flex: 1 1 50%; box-sizing: border-box; gap: 1rem; } .mechleft { display: flex; flex-direction: column; } .mechright { flex: 1 1 40%; } .level.overheating { background: linear-gradient( 90deg, rgba(247, 0, 0, 1) 0%, rgba(250, 138, 0, 1) 50%, rgba(234, 245, 30, 1) 68%, rgba(255, 255, 255, 1) 93% ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; font-weight: bold; } .level.hot { color: red; } .level.warm { color: orange; } .level.cool { color: blue; } .level.cold { color: gray; } .mech { grid-area: mech; background: repeating-linear-gradient( 45deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2) 10px, rgba(0, 0, 0, 0.3) 10px, rgba(0, 0, 0, 0.3) 20px ), url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/3/old_map_@2X.png); } .perks { grid-area: perks; } .mechstats { grid-area: mechstats; } .conditions { grid-area: conditions; } .conditions h2 { display: flex; justify-content: center; } .allConditions { display: flex; flex-direction: column; flex-wrap: wrap; height: 200px; } .conds { display: flex; } .cond input[type=text], .cond input[type=number] { border: 1px solid black; } input.sheet-briny:not(:checked) + input.sheet-space + section.conditions div .brinycond { display: none; } input.sheet-briny:not(:checked) + input.sheet-space:not(:checked) + section.conditions div .spacecond { display: none; } input.sheet-briny:not(:checked) + input.sheet-space:not(:checked) + section.conditions div .brinyorspacecond { display: none; } .settings { grid-area: settings; display: flex; flex-direction: row; justify-content: space-between; } .power .repcontainer[data-groupname="repeating_power"]{ padding-bottom: 0.2em; } .power .repcontainer[data-groupname="repeating_power"] .repitem{ margin: 4px 0px; } .gear { grid-area: gear; } div.briny { margin-top:10px; display: none; /*default*/ } section.mech { display: none; /*default*/ } section.perks { display: none; /*default*/ } section.mechstats { display: none; /*default*/ } h4.briny { text-align:center; } div.briny > h5 { margin-top: 10px; } .items { grid-area: items; } .portrait { grid-area: portrait; } section.notes { grid-area: notes; min-height: 120px; height:fit-content; } /*------------------------------------*\ #My Custom CSS \*------------------------------------*/ .flexheader { display: flex; flex-wrap: wrap; } textarea.textnotes { height: unset; min-height:70%; } .header-left { flex: 0 0 auto; } .header-left.empty { flex: 0 0 auto; } .header-left-wrapper { flex: 2; display: flex; flex-direction: column; justify-content: space-between; min-height: 100%; } .header-right { flex: 1; display: flex; flex-direction: column; justify-content: space-between; } .mainbase .header-right { width: 29%; } .stack { display: flex; flex-direction: column; padding: 0; } hr.underline { border: unset; margin: 0; border-bottom: 2px solid #acadb0; } div.autoExpand + hr.underline { margin-bottom:5px; } hr.underline ~ label { margin-top: -4px; margin-left: 4px; } hr.divide { margin-top: 10px; border-top: 3px solid #afafaf; } .nintety { width: 80%; } button.inline { margin-left: 1px !important; margin-right: 1px !important; } input.item { width: 58%; margin-left: 1px !important; margin-right: 0px !important; } input.item ~ label.inline { position: relative; bottom: -2px; margin-left: 1px; margin-right: 0px; } input.harmcounter { width: 3em !important; } label.harmlabel { position: relative; bottom: -2px; margin-left: 1px; margin-right: 0px; display: inline; } input.weapon { width: 40%; } span.ammo { display: none; } span.ammo > label, span.upgrades > label { width: fit-content; } span.upgrades { display: flex; } span.ammo > p.slash { font-size: 2em; font-weight: bold; position: relative; top: 6px; } div.hotboxDetail { display: none; } input[name="attr_show_hotbox"][value="1"] ~ div.hotboxDetail { display: flex; } .hotboxDetail { flex-direction: column; } .heatholder { display: flex; flex-direction: row; } input.hasammo[value="true"] + span.ammo { display: flex; } span.entire { display: flex; flex-direction: row; justify-content: space-between; } input.weapon { width: 12em; } input.header-input { margin: 0; margin-left: 0px !important; margin-top: 0px !important; } img { border: 5px solid #e8e8e9; max-width:95% } h4.caption { font-variant: small-caps; text-align: right; width: 95%; } h4.sidebar { font-variant: small-caps; margin-bottom:-10px; margin-top: 10px; font-size: 1.3em; } h4.sidebar ~ h4.sidebar { margin-top: 0px; } h2 { font-variant: small-caps; } .borderless { border: none; } h4.second { margin-top: 20px; } div.weapon:not(:first-child) { margin-top: 15px; } div.minmax { display:flex; margin-top:10px; justify-content:center; } span.minmax { font-weight: bold; font-size: 2.4em; } input.minmax { margin-bottom: 10px; } .inline { display: inline !important; } label.inline ~ input { display: inline; } label.desc { margin-bottom: 0px; } .autoExpand { overflow: hidden; position: relative; min-width: 100px; width: fit-content; height: 28px; width: 100%; margin-bottom: 3px; } .autoExpand.long { min-width: 230px; width: 80% } .autoExpand span { visibility: hidden; font-size: 1em; padding: 0 8px; /* Matching my input's padding so that the widths are correct */ } .autoExpand input { position: absolute; /* removes the input from the DOM flow, allowing the span to exist in the same space */ width: 100%; font-size: 1em; } span.range > input { margin-right: 5px; } .small { font-size: 1em !important; } .sidebar-input { display:inline; width: 30%; margin-left:10px; } .sidebar-input ~ label { dispaly: inline; width: 50%; margin-left: 10%; align-self: flex-end; margin-bottom: 10px; font-variant: small-caps; } .mechholder > .sidebar-input ~ label { margin-left: 1%; } hr.overline { border: unset; margin: 0; border-top: 2px solid #acadb0; width:100%; } div.sideholder { display: flex; flex-direction: row; flex-wrap:wrap; } div.mechholder { display: flex; flex-direction: row; flex-wrap:wrap; } h3.sidebar { text-align: left; font-variant: small-caps; } img.charPort { height: 247px; width: 247px; } label.setting { font-size: 1em; width: fit-content; } label.setting ~ input { width:fit-content; margin-top:3px; } span.briny-setting span.space-setting { position: relative; bottom: -5px; float:right; margin-bottom: 5px; } span.space-setting { margin-left: 20px; } input.sheet-briny { margin-bottom:4px; } input.sheet-briny:checked ~ div.briny { display:block; } input.sheet-space { margin-bottom:4px; } div.space { display: none; } input.sheet-space:checked ~ div.space { display:block; } input.sheet-space:checked ~ section.mech { display:block; } input.sheet-space:checked ~ section.perks { display:block; } input.sheet-space:checked ~ section.mechstats { display:block; } input.sheet-space:checked ~ div.optional { display:block; } div.optional { display:none; } .pictos { font-family: 'Pictos' !important; } .hidden { display: none; } input.powername { width: 180px; } input.cost { width: 45px; } .centerme { display: flex; flex-direction: column; align-self: center; align-items: center; } .mech-abilities { display: flex; flex-direction: row; align-items: flex-start; gap: 8px; width: 100%; margin-top: 10px; } .mech-ability-section { flex: 1; display: flex; flex-direction: column; min-width: 0; } .mech-ability-section label { font-weight: bold; margin-bottom: 5px; font-size: 0.9em; } .mech-ability-section .mshop-header { display: flex; align-items: center; gap: 5px; margin-bottom: 5px; } .mech-ability-section .mshop-header label { margin-bottom: 0; } .mech-ability-section input[type="checkbox"].mshop-toggle { margin: 0; width: auto; } .mech-ability-section textarea { width: 100%; min-height: 60px; resize: vertical; box-sizing: border-box; } .mech-ability-section:has(input[type="checkbox"]:not(:checked)) textarea { opacity: 0.5; pointer-events: none; background-color: #f5f5f5; } .mech-ability-divider { width: 2px; background-color: rgba(0, 0, 0, 0.4); align-self: center; height: 70px; flex-shrink: 0; } /* Buttons */ button[type=roll].sheet-d6-dice::before { font-family: 'dicefontd6'; content: 'F '; } button.d6 { padding: 2px 3px; font-size: 1.3em; margin: 0px 3px 0px 3px; } button.d6::before { font-family: 'dicefontd6'; content: 'F '; } button.disab { display: none !important; } button.enab { } /* Grief */ div.outergrief { display: flex; flex-direction: row; } button.grief { align-self: center; display: flex; margin-top: 12px; height: fit-content; } div.grief { background: transparent; box-sizing: border-box; display: flex; height: 6em; overflow: hidden; padding: 1em 0; position: relative; width: 100%; padding-bottom:30px; } div.grief::before { content: ""; display: block; position: absolute; top: 4em; width: 100%; } .progressbar__radio { display: none; } label.progressbar__label { text-align: center; padding-top: 0px; } /* Labels after the one we've clicked */ .progressbar__radio:checked + label ~ label { color: black; } /* Every circle that follows the one clicked */ .progressbar__radio:checked + label ~ label::before { background: #4286f4; border: 2px solid #4286f4; } .progressbar__radio:checked + label ~ label::after { background: #aaa; } /* The checked circle */ .progressbar__radio:checked + label::before { background: #4286f4; } /* The checked label */ .progressbar__radio:checked + label { color: black; text-align: center; } /*Labels before the one we clicked*/ .progressbar__label { color: #aaa; display: table-cell; font-weight: bold; position: relative; text-align: center; } .progressbar__label::before { background: white; border: 2px solid #4286f4; bottom: calc((100% - 40px) - 2px); content: ""; display: block; height: 20px; position: absolute; width: 20px; z-index: 9; } /* End Grief */ /* Threat */ div.outerthreat { display: flex; flex-direction: column; width:50%; } .threat { background: transparent; box-sizing: border-box; display: flex; height: 6em; overflow: hidden; padding: 1em 0; position: relative; width: 100%; --threatLevel1Color: #2D9606; --threatLevel2Color: #F3DA35; --threatLevel3Color: #E67F45; --threatLevel4Color: #D50C59; } .threat::before { content: ""; display: block; position: absolute; top: 4em; width: 100%; } .threatbar { display: none; } label.threatlabel { text-align: center; padding-top: 0px; } .threatbar:checked + label ~ label { color: #aaa; } .threatbar:checked + label ~ label::before { background: white; border-color: #aaa; } .threatbar:checked + label ~ label::after { background: #aaa; } .threatlabel { color: #4286f4; display: table-cell; font-weight: bold; position: relative; text-align: center; text-transform: uppercase; } .threatlabel::before { background: #4286f4; border: 2px solid #4286f4; bottom: calc((100% - 40px) - 2px); content: ""; display: block; height: 20px; left: calc((50% - 1em) - 2px); position: absolute; width: 20px; z-index: 9; margin-left: 6px; } .threat1::before { background: var(--threatLevel1Color); border-color: var(--threatLevel1Color); } .threatlabel.threat1 { color: var(--threatLevel1Color); } .threat2::before { background: var(--threatLevel2Color); border-color: var(--threatLevel2Color); } .threatlabel.threat2 { color: var(--threatLevel2Color); } .threat3::before { background: var(--threatLevel3Color); border-color: var(--threatLevel3Color); } .threatlabel.threat3 { color: var(--threatLevel3Color); } .threat4::before { background: var(--threatLevel4Color); border-color: var(--threatLevel4Color); } .threatlabel.threat4 { color: var(--threatLevel4Color); } /* End Threat */ .prog { display: flex; flex-direction: row; justify-content: start; } .leftprog, .rightprog { width: 40%; margin-left: 10% } .enemyheader { text-align: center; } .threat.status { width: 70%; } h3.final { text-align: left; } hr.separate { border: 3px solid black; border-style: solid; border-top: none; } .break { flex-basis: 100%; width: 0; } .victoryholder { margin-top: 10px; } .threat.status.victory { display: flex; padding-left: 10%; padding-right: 10%; width: 100%; } input.attr + span.minmax + input.attr + label { width:30%; } .minmax.short { height: 20px; margin-top: -5px; } input.sheer-disabler:checked ~ button.disab { display: inline !important; } input.sheer-disabler:checked ~ button.enab { display: none !important; } .pull-right { font-size: 1.3em; margin-top: 5px; } hr.separaotr { border-top: 3px solid #c9c9c9; } button[type=roll]::before { font-family: 'dicefontd6' !important; content: 'F ' !important; } label.rellabel { width: 30%; } label.rellabel + input.relinput { width: 70% } textarea.adjustable { margin-top: 2px; min-height: 80px; } textarea.adjustable:last-of-type { } .right { float: right; margin-right: 10px; } textarea.powertext { margin-top: 2px; } /* Tab Switching */ .charactersheet, .basesheet, .campaignsheet { display: none; background-color: #f8f8f8; /* Maybe remove */ } .charactersheet section:not(.hiveroom) { background-color: #f8f8f8; } .hivebase:before { content:""; background-color:#f8f8f8; height:930px; position: absolute; width: 95%; z-index: -1; } .campaignCore, .campaignSpace, .campaignCustom { display: none; } .campaignType[value="campaignCore"] ~ div.campaignCore, .campaignType[value="campaignSpace"] ~ div.campaignSpace, .campaignType[value="campaignCustom"] ~ div.campaignCustom { display: block; } /* show the selected tab */ .tabstoggle[value="basesheet"] ~ div.basesheet, .tabstoggle[value="charactersheet"] ~ div.charactersheet, .tabstoggle[value="campaignsheet"] ~ div.campaignsheet { display: block; } .tabstoggle[value="basesheet"] ~ div.tabholder > .basesheetbtn, .tabstoggle[value="charactersheet"] ~ div.tabholder > .charsheetbtn, .tabstoggle[value="campaignsheet"] ~ div.tabholder > .campaignsheetbtn { background-color:#3287a8; color: white; } .campaignToggle[value="campaignCore"] ~ div.campaignHolder > .campaignCoreBtn, .campaignToggle[value="campaignSpace"] ~ div.campaignHolder > .campaignSpaceBtn, .campaignToggle[value="campaignCustom"] ~ div.campaignHolder > .campaignCustomBtn { background-color:#3287a8; color: white; } /* Tab switching for base sub sheets (e.g. submarine) */ input.sheet-briny:not(:checked) ~ div.basesheet > .basetabholder { display: none; } .basetabholder { position: relative; bottom: 15px; } .mainbase, .subbase, .hivebase{ display: none !important; } /* show the selected tab */ .basetabstoggle[value="mainbase"] ~ div.mainbase, .basetabstoggle[value="subbase"] ~ div.subbase, .basetabstoggle[value="hivebase"] ~ div.hivebase { display: grid !important; } .campaignToggle[value="mainbase"] ~ div.mainbase, .campaignToggle[value="subbase"] ~ div.subbase, .campaignToggle[value="hivebase"] ~ div.hivebase { display: grid !important; } .basetabstoggle[value="campaignCore"] ~ div.campaignHolder > .campaignCoreBtn, .basetabstoggle[value="campaignSpace"] ~ div.campaignHolder > .campaignSpaceBtn, .basetabstoggle[value="campaignCustom"] ~ div.campaignHolder > .campaignCustomBtn { background-color:#3287a8; color: white; } span.centertext { display: flex; flex-direction: column; align-items: center; } /* Filtered Powers */ .filtered_powers ~.repcontrol { display: none; /* Hide the add/modify buttons*/ } .filtered ~.repcontrol { display: none; /* Hide the add/modify buttons*/ } /* Not sure what it thinks the first one is but ok */ .filtered_drones ~.repcontrol:nth-of-type(2) { display: none; /* Hide the add/modify buttons*/ } /* Any child of a repitem of a filtered_power that is a sibling of an unchecked equipped box */ input.equipped:not(:checked) ~ * { display:none !important; /*This has to be important because labels do NOT want to hide.*/ } .knownname { width: 125px !important; } /* Base Sheet */ .mainbase { display: grid; width: 800px; height: 1460px; grid-gap: 4px; grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-rows: 230px 1fr 1fr 1fr 1fr 200px; grid-template-areas: "basehead basehead basehead basehead" "room1 room2 room3 room4 " "room5 room6 room7 room8 " "room9 room10 room11 room12 " "room13 room14 room15 room16 " "basenotes basenotes basenotes basenotes"; } .basenotes { grid-area: basenotes; height: fit-content; } .basehead { grid-area: basehead; background-color: #e8e8e9 !important; flex-direction: column; } .basehead > .header-left { margin-left: 10px; } .basehead > .header-left > label { margin-top: 2px; } h2.pull-left { float: left; display: float; align-self: flex-start; margin-left: 15px; } .room1 { grid-area: room1; } .room2 { grid-area: room2; } .room3 { grid-area: room3; } .room4 { grid-area: room4; } .room5 { grid-area: room5; } .room6 { grid-area: room6; } .room7 { grid-area: room7; } .room8 { grid-area: room8; } .room9 { grid-area: room9; } .room10 { grid-area: room10; } .room11 { grid-area: room11; } .room12 { grid-area: room12; } .room13 { grid-area: room13; } .room14 { grid-area: room14; } .room15 { grid-area: room15; } .room16 { grid-area: room16; } .baseside { grid-area: baseside; } h3 { font-size: 2em; } /* Base Customizations */ .basenotes > textarea { min-height: 70%; } section.room { display: flex; flex-direction: column; justify-content: center; } label.basecost { font-size: 16em; display: flex; align-self: center; justify-self: center; color: #efefef; position: relative; left: 23%; top: 5%; user-select: none; } .mech { font-color: white; } span.subspan { display: flex; } span.subspan label { width: 3em; } span.subspan select { width: 10em; margin-right: 1em; } span.subspan button { height: 1em; } span.baselocker { justify-self: center; align-self: center; display: flex; position: relative; bottom: 5px; } .Munholder { display: flex; } span.baselocker.sub { margin-top: unset !important; } input.baselocked:not(:checked) ~ span.baselocker { margin-top: auto; } /* The checkbox before "locked" */ input.baselocked:not(:checked) ~ span.baselocker > input { margin-top: 3px; position: relative; } /* Name of the building */ .buildinglist { width: 150px; } /* Checkbox itself */ input.baselocked:checked, input.baselocked[value="on"] { width: 1.35em; top: 4px; position: relative; } /* "locked" text */ .baselabel { position: relative; top: 1px; } /* The word "locked" */ input.baselocked:checked + label.baselabel { font-variant: small-caps; font-size: 2em; } /*When the room is UNLOCKED, "locked" label and big number*/ input.baselocked:not(:checked) + label{ display: none; } /*Room label (its name) and its description*/ input.baselocked:checked ~ input, input.baselocked:checked ~ textarea { display: none; } /* Toggle between briny, space, and regular inputs */ /* This specificity trick saved us from having to create 16 hidden checkboxes. */ /* Also lost an hour becuase didn't realize JQuery is ONLY available in dev server but c'est la vie. */ /* Hide core buildings when either briny or space is checked */ input.sheet-briny:checked ~ div.basesheet > div.mainbase > section > input.corebuildings { display: none; } input.sheet-space:checked ~ div.basesheet > div.mainbase > section > input.corebuildings { display: none; } /* Hide briny buildings when briny is not checked OR when space is checked */ input.sheet-briny:not(:checked) ~ div.basesheet > div.mainbase > section > input.brinybuildings { display: none; } input.sheet-space:checked ~ div.basesheet > div.mainbase > section > input.brinybuildings { display: none; } /* Hide space buildings when space is not checked */ input.sheet-space:not(:checked) ~ div.basesheet > div.mainbase > section > input.spacebuildings { display: none; } /* Hide the Briny Bastards lieutenants page if we're not on BB mode */ input.sheet-briny:not(:checked) ~ .campaignsheet .lieutenants { display: none; } .liename { font-variant: small-caps; text-align: left !important; } .liename:not(.first) { margin-top: 5px; } .lieuholder { width: 100%; text-align: left; } .maxwidth { max-width: 97%; } .lieuholder:last-child { margin-bottom: 10px; } .lieustats { flex-direction: column; } .centered { text-align: left; margin-left: 5%; width: 100%; } .cutbacks.lieutenants { counter-reset: repitem; } .counter::before { counter-increment: repitem; content: counter(repitem) '. '; } .spacebefore { margin-top: 35px; } .corpmiss.allyname { width: 160px !important; word-wrap: break-word; min-height: fit-content !important; height: 100%; overflow: auto; margin-right: 0px; margin-top: 10px; padding-bottom: 15px; } .fieldbutton { vertical-align: top; margin-top: 10px; } input.baselocked[value="on"] + span.subinfo, input.baselocked[value="on"] + textarea, input.baselocked:checked + span.subinfo, input.baselocked:checked+ textarea{ display: none; } span.decay { display: flex; z-index: 1; } label.decayed { display: none; } span.decay > p { font-size: 2.2em; position: relative; top: 5px; } label.decay { width: fit-content; } input.decayed[value="on"] + label.decayed { color: red; transform: rotate(45deg); top: 55px; position: relative; right: 45px; font-size: 1.4em; display: block; } /* Submarine */ .submarine { border-radius: 20% 20% 20% 20% / 50% 50% 49% 50%; border: 5px solid #000; height: 800px; border-color: transparent #000 transparent #000; display: grid; width: 800px; height: 1460px; padding-left: 29px; padding-right: 29px; grid-gap: 4px; grid-template-columns:20px 1fr 1fr 20px; grid-template-rows: 230px 1fr 1fr 1fr 200px; grid-template-areas: "subhead subhead subhead subhead" ". subroom1 subroom2 ." ". subroom3 subroom4 ." ". subroom5 subroom6 ." ". subnotes subnotes ."; } .subhead { grid-area: subhead; margin-bottom: 100px; position: relative; left: 10%; width: 80%; top: 100px; } .subnotes { grid-area: subnotes; left: 5%; position: relative; width: 93%; } .subroom { max-width: 1fr; } .subroom1 { grid-area: subroom1; } .subroom2 { grid-area: subroom2; } .subroom3 { grid-area: subroom3; } .subroom4 { grid-area: subroom4; } .subroom5 { grid-area: subroom5; } .subroom6 { grid-area: subroom6; } span.subinfo { display: flex; } label.narrow { width: fit-content; } h2.narrow { width:fit-content; } span.spacer { display: flex; justify-content: space-between; } input.subdamaged[value="on"] ~ label.damagelabel { color: red; display: inline; position: relative; font-size: 3em; left: 15%; transform: rotate(30deg); bottom: 40%; } label.damagelabel { display: none; } .pullright{ margin-left: auto !important; } input.subdamaged { margin-right: 10px; } .pulldown { margin-top: 40px; } .rightsubmarine { position: relative; top: -30px; } .subname { position: relative; bottom: 30px; } .submarine_heading_holder { display: flex; } textarea.subsource { height: 40%; } /* Beehive */ #grid li { list-style-type: none; position: relative; float: left; width: 27.85714285714286%; padding: 0 0 32.16760145166612% 0; -o-transform: rotate(-60deg) skewY(30deg); -moz-transform: rotate(-60deg) skewY(30deg); -webkit-transform: rotate(-60deg) skewY(30deg); -ms-transform: rotate(-60deg) skewY(30deg); transform: rotate(-60deg) skewY(30deg); background: #fd005f; overflow: hidden; visibility: hidden; } #grid li * { visibility: visible; } #grid li .hexagon { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fdbf00; -o-transform: skewY(-30deg) rotate(60deg); -moz-transform: skewY(-30deg) rotate(60deg); -webkit-transform: skewY(-30deg) rotate(60deg); -ms-transform: skewY(-30deg) rotate(60deg); transform: skewY(-30deg) rotate(60deg); overflow: hidden; display: flex; justify-content: center; align-items: center; } #grid li:nth-child(3n+2) { margin: 0 1%; } #grid li:nth-child(6n+4), #grid li:nth-child(6n+5), #grid li:nth-child(6n+6) { margin-top: -6.9285714285%; margin-bottom: -6.9285714285%; -o-transform: translateX(50%) rotate(-60deg) skewY(30deg); -moz-transform: translateX(50%) rotate(-60deg) skewY(30deg); -webkit-transform: translateX(50%) rotate(-60deg) skewY(30deg); -ms-transform: translateX(50%) rotate(-60deg) skewY(30deg); transform: translateX(50%) rotate(-60deg) skewY(30deg); } .hiveroom { border: none; } /* Campaign sheet */ .campaignzone { height: 800px; border-color: transparent #000 transparent #000; display: grid; width: 800px; height: 1460px; padding-left: 29px; padding-right: 29px; grid-gap: 4px; grid-template-columns:1fr 2fr; grid-template-rows: 200px 220px 190px 1fr 200px; grid-template-areas: "camphead camphead" "secondary secondary" "drops drops" "friendbar progress" "friendbar campnotes"; } .drops { grid-area: drops; } .secondary { grid-area: secondary; } .camphead { grid-area: camphead } .friendbar { grid-area: friendbar; } .camprogress { grid-area: progress; } .campnotes { grid-area: campnotes; height: fit-content; min-height: 185px; } .flexspan { display: flex; } div > input.allyname { width: 65%; margin-left: 0px !important; } .friend > h3, .foe > h3 { margin-bottom: 15px; } hr.separator { margin-top: 60px; margin-bottom: 60px; border-color: #7d7d7d; border-width: 2px; border-style: dashed; } prog > h3, prog > h2 { font-variant: small-caps; } input.sheet-briny:not(:checked) + .brinyhide { display: none; } .eighty { width: 80%; } /* Drops */ .alldrops { display: flex; flex-direction: row; justify-content: space-around; } .drop { align-items: center; display: flex; flex-direction: column; } .sectiontop { display: flex; flex-direction: column; justify-content: center; align-items: center; } .adj { display: flex; } .myRow { display: flex; flex-direction: row; justify-content: space-between; } span.bonus { display:flex; } div.centerbtn { display: flex; display: flex; justify-content: center; margin-top: 10px; } .dropbtn { width: 15% } .sheet-briny:not(:checked) ~ .campaignsheet .brinydrop { display: none; } /* Roll Templates */ /* Attribute template */ .sheet-rolltemplate-attributeroll { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: grid; grid-template-areas: "name roll" "title roll" "results results" "details details"; grid-template-columns: 1fr auto; grid-template-rows: auto auto auto auto; grid-column-gap: 3px; } .sheet-rolltemplate-attributeroll .sheet-cybertitle { color: green; } .sheet-rolltemplate-attributeroll .sheet-smashtitle { color: red; } .sheet-rolltemplate-attributeroll .sheet-slytitle { color: blue; } .sheet-rolltemplate-attributeroll .sheet-result { grid-area: results; display: flex; justify-content: center; text-align: center; margin-bottom: 0; } .sheet-rolltemplate-attributeroll .sheet-reprecussion { color: red; font-size: 1.2em; margin-top: 5px; margin-bottom: 5px; } .sheet-rolltemplate-attributeroll .sheet-success { color: green; font-size: 1.3em; } .sheet-rolltemplate-attributeroll .sheet-reprecussion:first-letter { text-transform: uppercase; } .sheet-rolltemplate-attributeroll .sheet-container { border: 3px solid black; border-radius: 3px; } .sheet-rolltemplate-attributeroll .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-attributeroll .sheet-header { background-color: var(--header-bg-color, #a83521); color: var(--header-text-color, #FFF); text-align: left; text-transform: capitalize; padding: 5px; border-bottom: 2px solid black; } .sheet-rolltemplate-attributeroll .sheet-title, .sheet-rolltemplate-attributeroll .sheet-name { font-size: 1.4em; font-weight: bold; } .sheet-rolltemplate-attributeroll .sheet-title { grid-area: title; letter-spacing: 0.5px; } .sheet-rolltemplate-attributeroll .sheet-name { grid-area: name; } .sheet-rolltemplate-attributeroll .sheet-subtitle { font-size: 1em; } .sheet-rolltemplate-attributeroll .sheet-container { --header-bg-color: #a83521; --header-text-color: #FFF; } .sheet-rolltemplate-attributeroll .sheet-content { display: grid; background: #FFF; grid-template-columns: auto auto; line-height: 1.4em; } .sheet-rolltemplate-attributeroll .sheet-content > div { padding: 5px; } .sheet-rolltemplate-attributeroll .sheet-results-roll { opacity: 0.7; } .sheet-rolltemplate-attributeroll .sheet-content .sheet-key { font-weight: bold; padding-right: 10px; text-align: right; } .sheet-rolltemplate-attributeroll .sheet-content :nth-child(4n+3), .sheet-rolltemplate-attributeroll .sheet-content :nth-child(4n) { background: #EEE; } .sheet-rolltemplate-attributeroll .sheet-main-roll { font-size: 1.1em; text-align: center; margin-right: 5px; } .sheet-rolltemplate-attributeroll .inlinerollresult { border: none !important; background-color: transparent; font-weight: bold; padding: 0 3px 0 0; font-size: 1.2em; } .sheet-rolltemplate-attributeroll .sheet-main-roll .inlinerollresult { font-size: 1.6em; } .sheet-rolltemplate-attributeroll .sheet-details { grid-column: span 2; font-size: .9em; grid-area: details; margin-top: 5px; letter-spacing: -0.4px; text-align: center; } .sheet-rolltemplate-attributeroll .sheet-armament-reminder { grid-column: span 2; font-size: 0.75em; text-align: center; margin-top: 8px; padding-top: 5px; border-top: 1px solid rgba(0,0,0,0.1); color: #666; } /* Secondary mission templates */ .sheet-rolltemplate-mission { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: grid; grid-template-areas: "title roll" "results results" "failure failure" "success success" "costs costs" "injured injured"; grid-template-columns: 1fr auto; grid-template-rows: auto auto auto auto auto auto; grid-column-gap: 3px; } .sheet-rolltemplate-mission .sheet-injured { grid-area: injured; } .sheet-rolltemplate-mission .sheet-succMsg { color: green; } .sheet-rolltemplate-mission div.sheet-deets { margin-top: 15px; } .sheet-rolltemplate-mission .sheet-failMsg { color: red; } .sheet-rolltemplate-mission .sheet-costs { grid-area: costs; } .sheet-rolltemplate-mission .sheet-success { grid-area: success; } .sheet-rolltemplate-mission .sheet-failure { grid-area: failure; } .sheet-rolltemplate-mission .sheet-title { grid-area: title; letter-spacing: 0.5px; } .sheet-rolltemplate-mission .sheet-result { grid-area: results; display: flex; justify-content: center; text-align: center; } .sheet-rolltemplate-mission .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-mission .sheet-results-roll { opacity: 0.7; } .sheet-rolltemplate-mission .sheet-main-roll { font-size: 1.1em; text-align: center; margin-right: 5px; } .sheet-rolltemplate-mission .inlinerollresult { border: none !important; background-color: transparent; font-weight: bold; padding: 0 3px 0 0; font-size: 1.2em; } .sheet-rolltemplate-mission .sheet-main-roll .inlinerollresult { font-size: 1.6em; } /* Drops Template*/ .sheet-rolltemplate-drops { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; align-items: center; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: flex; flex-direction: column; } .sheet-rolltemplate-drops .sheet-title { text-align: center; font-size: 1.4em; font-weight: bold; } /* Grief Template */ .sheet-rolltemplate-grief .sheet-grieflength > .inlinerollresult { border: unset; background-color: unset; font-size: unset; } .sheet-rolltemplate-grief { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; align-items: center; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: grid; grid-template-areas: "grieftitle grieftitle" "gOperName gRoll" "result result"; grid-template-columns: 1fr auto; grid-template-rows: auto 1fr 1.5fr; grid-column-gap: 3px; } .sheet-rolltemplate-grief .sheet-title { grid-area: grieftitle; text-align: center; font-size: 1.4em; font-weight: bold; } .sheet-rolltemplate-grief .sheet-name { grid-area: gOperName; font-size: 1em; font-weight: bold; margin-top: 3px; } .sheet-rolltemplate-grief .sheet-result { grid-area: result; display: flex; justify-content: center; text-align: center; font-size: medium; margin-top:10px; align-items: center; } .sheet-rolltemplate-grief .sheet-main-roll{ grid-area: roll; align-self: center; justify-self: center; border-radius: 10px; min-width: 40px; min-height: 40px; max-width: 80px; text-align: center; font-size: 0.9em; margin-right: 15px; margin-top: 15px; } .sheet-rolltemplate-grief .sheet-main-roll > .inlinerollresult { border: 2px solid black; padding: 5px; border-radius: 10px; min-width: 40px; min-height: 40px; } .sheet-rolltemplate-grief .sheet-main-roll > .fullfail { border: 2px solid #b31515; } .sheet-rolltemplate-grief .sheet-main-roll > .fullcrit { border: 2px solid #3fb315; } /* Power Template */ .sheet-rolltemplate-powers { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: grid; grid-template-areas: "powertitle powertitle" "pOperName powercost" "powerName powerHarm" "pdesc pdesc"; grid-template-columns: 1fr auto; grid-template-rows: auto auto 1fr 1fr; grid-column-gap: 3px; } .sheet-rolltemplate-powers .sheet-header { display: grid; } .sheet-rolltemplate-powers .sheet-title { grid-area: powertitle; text-align: center; font-size: 1.4em; font-weight: bold; margin-bottom: 5px; } .sheet-rolltemplate-powers .sheet-name { grid-area: pOperName; font-size: 1.4em; font-weight: bold; } .sheet-rolltemplate-powers .sheet-powername { grid-area: powerName; font-style: italic; } .sheet-rolltemplate-powers .sheet-description { grid-area: pdesc; } .sheet-rolltemplate-powers .sheet-cost { grid-area: powercost; } .sheet-rolltemplate-powers .sheet-powerHarm { grid-area: powerHarm; } /* Weapon template */ .sheet-rolltemplate-weapon { font-family: "IBM Plex Mono"; 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; box-sizing: border-box; background-repeat: repeat-y; background-size: 100% auto; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg.jpg"); display: grid; grid-template-areas: "weapontitle weapontitle" "operName harm" "weaponName ." "pdesc pdesc" "range range" "ammo ammo" "fuse fuse"; grid-template-columns: 2fr 1fr; grid-template-rows: auto auto auto auto auto auto auto; grid-column-gap: 3px; } .sheet-rolltemplate-weapon .sheet-header { display: grid; } .sheet-rolltemplate-weapon .sheet-ammo { grid-area: ammo; text-align: center; } .sheet-rolltemplate-weapon .sheet-range { grid-area: range; font-size: .86em; margin-bottom: 15px; margin-top:11px; } .sheet-rolltemplate-weapon .sheet-armUpgrades { grid-area: fuse; font-size: .86em; margin-bottom: 15px; margin-top:11px; } .sheet-rolltemplate-weapon .sheet-title { grid-area: weapontitle; text-align: center; font-size: 1.4em; font-weight: bold; margin-bottom: 5px; } .sheet-rolltemplate-weapon .sheet-name { grid-area: operName; font-size: 1.1em; font-weight: bold; } .sheet-rolltemplate-weapon .sheet-red { color: red; } .sheet-rolltemplate-weapon .sheet-weaponname { grid-area: weaponName; font-style: italic; margin-top: 5px; } .sheet-rolltemplate-weapon .sheet-description { grid-area: pdesc; display: flex; justify-content: end; } .sheet-rolltemplate-weapon .sheet-harm { grid-area: harm; margin-bottom: 15px; } /* Dark Mode */ body.sheet-darkmode { --backgroundDark: #282828; --backgroundDarkOffset: #1e1e1e; --colorDark: #eee; --colorLight: #dcdcdc; --gentleOrange: #d79921; --orange: orange; --accentBlue: #458588; --threatLevel4ColorDark: #9d0006; --threatLevel3ColorDark: #af3a03; --threatLevel2ColorDark: #d79921; --threatLevel1ColorDark: #427b58; background: var(--backgroundDark); } body.sheet-darkmode button, body.sheet-darkmode input, body.sheet-darkmode optgroup, body.sheet-darkmode select, body.sheet-darkmode textarea, body.sheet-darkmode label, body.sheet-darkmode .charsheet { color: var(--colorDark); background-color: var(--backgroundDarkOffset); } body.sheet-darkmode .btn, body.sheet-darkmode .btn.btn-default { color: #c8c3bc; text-shadow: rgba(24,26,27,.75) 0px 1px 1px; background-color: var(--backgroundDark); background-image: linear-gradient(#181a1b, #26292b); border-color: #3e4446 #3e4446 #43494c; box-shadow: rgba(24,26,27,.2) 0px 1px 0px inset,rgba(0,0,0,.05) 0px 1px 2px } body.sheet-darkmode button, body.sheet-darkmode textarea, body.sheet-darkmode hr, body.sheet-darkmode input { border-color: var(--gentleOrange) !important; } body.sheet-darkmode h1, body.sheet-darkmode h2, body.sheet-darkmode h3, body.sheet-darkmode h4, body.sheet-darkmode h5 { color: var(--colorLight) } body.sheet-darkmode .header, body.sheet-darkmode .charactersheet, body.sheet-darkmode .campaignsheet, body.sheet-darkmode .basesheet, body.sheet-darkmode .hivebase::before, body.sheet-darkmode .charactersheet section:not(.hiveroom), body.sheet-darkmode .charactersheet main::before { background-color: var(--backgroundDark); } body.sheet-darkmode .basehead, body.sheet-darkmode .header { background-color: var(--backgroundDark) !important; } body.sheet-darkmode .autoExpand + hr.underline + label { margin-top: 0px; } body.sheet-darkmode label.basecost { width: fit-content; margin-right: 50%; } body.sheet-darkmode input { accent-color: var(--gentleOrange); } body.sheet-darkmode .basetabstoggle[value="mainbase"] ~ div.tabholder > .mainbasebtn, body.sheet-darkmode .basetabstoggle[value="subbase"] ~ div.tabholder > .subbasebtn, body.sheet-darkmode .basetabstoggle[value="hivebase"] ~ div.tabholder > .hivebasebtn { background-color: var(--gentleOrange); color: black; } body.sheet-darkmode .submarine { border-color: transparent #FFF transparent #FFF; } body.sheet-darkmode label:not(.progressbar__label, .threatlabel ) { width: fit-content; background: transparent; } body.sheet-darkmode .sideholder label { margin-right: auto; } body.sheet-darkmode .sideholder { justify-content: space-between; } body.sheet-darkmode input.baselocked:checked + label.baselabel { color: var(--gentleOrange); } body.sheet-darkmode .hiveroom input.baselocked:checked + label.baselabel { color: black; } body.sheet-darkmode .hiveroom textarea, body.sheet-darkmode .hiveroom input { accent-color: var(--colorLight); background-color: var(--accentBlue); } body.sheet-darkmode .hiveroom label { color: var(--accentBlue); } body.sheet-darkmode .hexagon { background: var(--gentleOrange) !important; } /* Dark Grief */ /* Labels after the one we've clicked */ body.sheet-darkmode .progressbar__radio:checked + label ~ label { color: var(--gentleOrange); background: transparent; } /* Every square that follows the one clicked */ body.sheet-darkmode .progressbar__radio:checked + label ~ label::before { background: var(--gentleOrange); border: 2px solid var(--gentleOrange); } body.sheet-darkmode .progressbar__radio:checked + label ~ label::after { background: #aaa; } /* The checked square */ body.sheet-darkmode .progressbar__radio:checked + label::before { background: var(--gentleOrange); } /* The checked label */ body.sheet-darkmode .progressbar__radio:checked + label { color: var(--gentleOrange); background: transparent; } /*Labels before the one we clicked*/ body.sheet-darkmode .progressbar__label { color: #aaa; background: transparent; } body.sheet-darkmode .progressbar__label::before { background: white; border: 2px solid var(--gentleOrange); } /* Dark Threat */ body.sheet-darkmode .threatbar:checked + label ~ label { color: #aaa; } body.sheet-darkmode .threatbar:checked + label ~ label::before { background: white; border-color: #aaa; } body.sheet-darkmode .threatbar:checked + label ~ label::after { background: #aaa; } body.sheet-darkmode .threatlabel { background: transparent; display: table-cell; font-weight: bold; position: relative; text-align: center; text-transform: uppercase; } body.sheet-darkmode .threatlabel::before { background: var(--gentleOrange); border: 2px solid var(--gentleOrange); bottom: calc((100% - 40px) - 2px); content: ""; display: block; height: 20px; left: calc((50% - 1em) - 2px); position: absolute; width: 20px; z-index: 9; margin-left: 6px; } body.sheet-darkmode .threat1::before { background: var(--threatLevel1ColorDark); border-color: var(--threatLevel1ColorDark); } body.sheet-darkmode .threatlabel.threat1 { color: var(--threatLevel1Color)D50C59; } body.sheet-darkmode .threat2::before { background: var(--threatLevel2ColorDark); border-color: var(--threatLevel2ColorDark); } body.sheet-darkmode .threatlabel.threat2 { color: var(--threatLevel2Color); } body.sheet-darkmode .threat3::before { background: var(--threatLevel3ColorDark); border-color: var(--threatLevel3ColorDark); } body.sheet-darkmode .threatlabel.threat3 { color: var(--threatLevel3ColorDark); } body.sheet-darkmode .threat4::before { background: var(--threatLevel4ColorDark); border-color: var(--threatLevel4ColorDark); } body.sheet-darkmode .threatlabel.threat4 { color: var(--threatLevel4ColorDark); } body.sheet-darkmode .threatlabel.threat1, body.sheet-darkmode .threatlabel.threat2, body.sheet-darkmode .threatlabel.threat3, body.sheet-darkmode .threatlabel.threat4 { background: transparent; } /* Dark templates */ .sheet-rolltemplate-darkmode { --greenDark: #689d6a; --redDark: #cc241d; --blueDark: #458588; --lightOffset: #d5c4a1; --darkText: #3c3836; background-image: url("https://raw.githubusercontent.com/roll20/roll20-character-sheets/master/Cyberrats/paper-bg-dark.jpg"); } /* Begin Dark Attribute */ .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll { border: 3px solid var(--lightOffset); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-cybertitle { color: var(--greenDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-smashtitle { color: var(--redDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-slytitle { color: var(--blueDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-reprecussion { color: var(--redDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-success { color: var(--greenDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-main-roll { font-size: 1.2em; text-align: center; margin-right: 5px; margin-bottom: 5px; } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .sheet-main-roll .inlinerollresult { font-size: 1.3em; padding-left: 4px; } .sheet-rolltemplate-darkmode.sheet-rolltemplate-attributeroll .inlinerollresult { border: none !important; background-color: var(--lightOffset); color: var(--darkText) } /* End Dark Attribute */ /* Begin Dark Grief */ .sheet-rolltemplate-darkmode.sheet-rolltemplate-grief { border: 2px solid var(--lightOffset); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-grief .sheet-main-roll > .inlinerollresult { border: 2px solid var(--lightOffset); background-color: var(--lightOffset); color: var(--darkText) } .sheet-rolltemplate-darkmode.sheet-rolltemplate-grief .sheet-main-roll > .fullfail { border: 2px solid var(--redDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-grief .sheet-main-roll > .fullcrit { border: 3px solid var(--greenDark); } .sheet-rolltemplate-darkmode.sheet-rolltemplate-weapon .sheet-red { color: var(--redDark); } /* Armament checkbox styling */ .armament-checkboxes { display: flex; gap: 15px; margin-bottom: 8px; padding: 5px; } .checkbox-group { display: flex; align-items: center; gap: 5px; } .checkbox-group input[type="checkbox"] { margin: 0; } .checkbox-group label { margin: 0; font-size: 12px; font-weight: bold; } .armament-divider { margin: 15px 0; border: none; border-top: 5px solid #333; width: 100%; }