"
+
+ for(var/i = 0, i < 100, i++)
+ if(!length(cast) && !chunksize)
+ cast += " "
+ chunk += "В съемках участвовали: "
+ chunk += "[human.real_name] в роли [uppertext(human.mind.assigned_role)]"
+ chunksize++
+ if(chunksize > 2)
+ cast += "[jointext(chunk," ")] "
+ chunk.Cut()
+ chunksize = 0
+
+ if(length(chunk))
+ cast += "[jointext(chunk," ")] "
+
+ content += cast
+
+/datum/credit/crewlist
+
+/datum/credit/crewlist/New()
+ . = ..()
+
+ var/list/cast = list()
+ var/list/chunk = list()
+ var/chunksize = 0
+
+ for(var/mob/living/carbon/human/human in GLOB.alive_mob_list | GLOB.dead_mob_list)
+ if(findtext(human.real_name,"(mannequin)"))
continue
+ if(ismonkeybasic(human))
+ continue
+ if(!human.last_known_ckey)
+ continue
+
if(!length(cast) && !chunksize)
- chunk += "В съемках участвовали:"
- chunk += "[human.real_name] в роли [uppertext(human.job)]"
+ cast += " "
+ chunk += "В съемках участвовали: "
+ chunk += "[human.real_name] [human.mind.assigned_role ? "в роли [uppertext(human.mind.assigned_role)]" : "" ]"
chunksize++
if(chunksize > 2)
cast += "[jointext(chunk," ")] "
chunk.Cut()
chunksize = 0
+
if(length(chunk))
cast += "[jointext(chunk," ")] "
- if(length(streamers))
- titles += "Приглашенные звезды: "
- titles += streamers
+ content += cast
- titles += cast
+/datum/credit/corpses_debug
+
+/datum/credit/corpses_debug/New()
+ . = ..()
+
+ var/list/corpses = list()
+
+ for(var/mob/living/carbon/human/human in GLOB.mob_living_list)
+ if(!human.last_known_ckey)
+ continue
+ else if(human.real_name)
+ for(var/i = 0, i < 50, i++)
+ corpses += human.real_name
+
+ if(length(corpses))
+ content += " "
+ content += "Основано на реальных событиях: В память о "
+ while(length(corpses) > 10)
+ content += "[jointext(corpses, ", ", 1, 10)], "
+ corpses.Cut(1, 10)
+
+ if(length(corpses))
+ content += "[jointext(corpses, ", ")] "
+
+
+
+/datum/credit/corpses/New()
+ . = ..()
var/list/corpses = list()
@@ -111,9 +299,22 @@ SUBSYSTEM_DEF(credits)
corpses += human.real_name
if(length(corpses))
- titles += "Основано на реальных событиях: В память о [english_list(corpses)]. "
+ content += " "
+ content += "Основано на реальных событиях: В память о "
+ while(length(corpses) > 10)
+ content += "[jointext(corpses, ", ", 1, 10)], "
+ corpses.Cut(1, 10)
+
+ if(length(corpses))
+ content += "[jointext(corpses, ", ")]. "
+
+
+/datum/credit/staff
+
+/datum/credit/staff/New()
+ . = ..()
- var/list/staff = list("Съемочная группа:")
+ var/list/staff = list()
var/list/staffjobs = file2list("config/credits/jobs/staffjobs.txt")
var/list/goodboys = list()
for(var/client/client in GLOB.clients)
@@ -125,9 +326,17 @@ SUBSYSTEM_DEF(credits)
else if(check_rights_client(R_MENTOR, FALSE, client))
goodboys += "[client.key]"
- titles += "[jointext(staff," ")] "
+ if(length(staff))
+ content += "Съемочная группа: "
+ content += "[jointext(staff," ")] "
+
if(length(goodboys))
- titles += "Мальчики на побегушках: [english_list(goodboys)] "
+ content += "Мальчики на побегушках: [english_list(goodboys)] "
+
+/datum/credit/disclaimer
+
+/datum/credit/disclaimer/New()
+ . = ..()
var/disclaimer = " Sponsored by WYCCSTATION. All rights reserved. \
This motion picture is protected under the copyright laws of the Sol Central Government and other nations throughout the galaxy. \
@@ -136,28 +345,17 @@ SUBSYSTEM_DEF(credits)
disclaimer += pick("Use for parody prohibited. PROHIBITED.",
"All stunts were performed by underpaid interns. Do NOT try at home.",
"WYCCSTATION does not endorse behaviour depicted. Attempt at your own risk.",
- "Any unauthorized exhibition, distribution, or copying of this film or any part thereof (including soundtrack) \
- may result in an ERT being called to storm your home and take it back by force.",
- "The story, all names, characters, and incidents portrayed in this production are fictitious. No identification with actual \
- persons (living or deceased), places, buildings, and products is intended or should be inferred. \
- This film is based on a true story and all individuals depicted are based on real people, despite what we just said.",
- "No person or entity associated with this film received payment or anything of value, or entered into any agreement, in connection \
- with the depiction of tobacco products, despite the copious amounts of smoking depicted within. \
- (This disclaimer sponsored by Carcinoma - Carcinogens are our Business!(TM)).",
"No animals were harmed in the making of this motion picture except for those listed previously as dead. Do not try this at home.")
- titles += " "
- titles += "[jointext(disclaimer, null)] "
-
- return titles
+ content += " "
+ content += "[jointext(disclaimer, null)] "
/obj/screen/credit
icon_state = "blank"
mouse_opacity = 0
- alpha = 0
+ alpha = 255
screen_loc = "CENTER-7,CENTER-7"
plane = CREDITS_PLANE
- var/matrix/target
var/client/parent
/obj/screen/credit/Initialize(mapload, credited, client/client)
@@ -169,18 +367,16 @@ SUBSYSTEM_DEF(credits)
maptext_width = world.icon_size * 14
/obj/screen/credit/proc/rollem()
- var/matrix/M = matrix(transform)
- M.Translate(0, SScredits.credit_animate_height)
- animate(src, transform = M, time = SScredits.credit_roll_speed)
- target = M
- animate(src, alpha = 255, time = SScredits.credit_ease_duration, flags = ANIMATION_PARALLEL)
- addtimer(CALLBACK(src, PROC_REF(delete_credit)), SScredits.credit_roll_speed - SScredits.credit_ease_duration, TIMER_CLIENT_TIME)
+ var/matrix/matrix = matrix(transform)
+ transform = matrix.Translate(0, -world.icon_size)
+
+ matrix.Translate(0, SScredits.credit_animate_height)
+ animate(src, transform = matrix, time = SScredits.credit_roll_speed)
+ addtimer(CALLBACK(src, PROC_REF(delete_credit)), SScredits.credit_roll_speed, TIMER_CLIENT_TIME)
parent.screen += src
/obj/screen/credit/proc/delete_credit()
if(!QDELETED(src))
- animate(src, alpha = 0, transform = target, time = SScredits.credit_ease_duration)
- sleep(SScredits.credit_ease_duration)
qdel(src)
/obj/screen/credit/Destroy()
@@ -193,7 +389,7 @@ SUBSYSTEM_DEF(credits)
/obj/screen/credit/logo
icon = 'modular_ss220/credits/icons/logo.dmi'
icon_state = "ss220"
- screen_loc = "CENTER - 2,CENTER - 3"
+ screen_loc = "CENTER - 2,CENTER"
alpha = 100
@@ -203,18 +399,14 @@ SUBSYSTEM_DEF(credits)
parent.screen += src
/obj/screen/credit/logo/rollem()
- var/matrix/M = matrix(transform)
- M.Translate(0, SScredits.credit_animate_height / 2)
- animate(src, transform = M, time = SScredits.credit_roll_speed / 2)
- target = M
- animate(src, alpha = 255, time = SScredits.credit_ease_duration / 2, flags = ANIMATION_PARALLEL)
- addtimer(CALLBACK(src, PROC_REF(delete_credit)),(SScredits.credit_roll_speed - SScredits.credit_ease_duration) / 2, TIMER_CLIENT_TIME)
+ var/matrix/matrix = matrix(transform)
+ matrix.Translate(0, SScredits.credit_animate_height)
+ animate(src, transform = matrix, time = SScredits.credit_roll_speed)
+ addtimer(CALLBACK(src, PROC_REF(delete_credit)), SScredits.credit_roll_speed, TIMER_CLIENT_TIME)
/obj/screen/credit/logo/delete_credit()
if(!QDELETED(src))
- animate(src, alpha = 0, transform = target, time = SScredits.credit_ease_duration / 2)
- sleep(SScredits.credit_ease_duration / 2)
qdel(src)
/client/var/list/credits
diff --git a/modular_ss220/credits/icons/logo.dmi b/modular_ss220/credits/icons/logo.dmi
index 9c968470962c..a27dc492f55f 100644
Binary files a/modular_ss220/credits/icons/logo.dmi and b/modular_ss220/credits/icons/logo.dmi differ
diff --git a/modular_ss220/cyrillic_fixes/_cyrillic_fixes.dm b/modular_ss220/cyrillic_fixes/_cyrillic_fixes.dm
index dfd53bdaf5ed..63abee23d8d1 100644
--- a/modular_ss220/cyrillic_fixes/_cyrillic_fixes.dm
+++ b/modular_ss220/cyrillic_fixes/_cyrillic_fixes.dm
@@ -6,6 +6,7 @@
/datum/modpack/cyrillic_fixes/initialize()
. = ..()
update_cyrillic_radio()
+ update_cyrillic_languages()
/datum/modpack/cyrillic_fixes/proc/update_cyrillic_radio()
GLOB.department_radio_keys |= list(
@@ -73,3 +74,14 @@
":-" = "Special Ops", "#-" = "Special Ops", "№-" = "Special Ops", ".-" = "Special Ops",
":+" = "special", "#+" = "special", "№+" = "special", ".+" = "special" //activate radio-specific special functions
)
+
+/datum/modpack/cyrillic_fixes/proc/update_cyrillic_languages()
+ for(var/language_name in GLOB.all_languages)
+ var/datum/language/L = GLOB.all_languages[language_name]
+ if(!(L.flags & NONGLOBAL))
+ GLOB.language_keys[":[lowertext(convert_en_key_to_ru_key(L.key))]"] = L
+ GLOB.language_keys[".[lowertext(convert_en_key_to_ru_key(L.key))]"] = L
+ GLOB.language_keys["#[lowertext(convert_en_key_to_ru_key(L.key))]"] = L
+ GLOB.language_keys["№[lowertext(convert_en_key_to_ru_key(L.key))]"] = L
+
+ GLOB.language_keys["№[lowertext(L.key)]"] = L
diff --git a/modular_ss220/cyrillic_fixes/code/hotkey.dm b/modular_ss220/cyrillic_fixes/code/hotkey.dm
index 7e7b0c7621ea..659a442567b1 100644
--- a/modular_ss220/cyrillic_fixes/code/hotkey.dm
+++ b/modular_ss220/cyrillic_fixes/code/hotkey.dm
@@ -4,9 +4,22 @@ GLOBAL_LIST_INIT(ru_key_to_en_key, list(
"я" = "z", "ч" = "x", "с" = "c", "м" = "v", "и" = "b", "т" = "n", "ь" = "m", "б" = ",", "ю" = "."
))
+GLOBAL_LIST_INIT(en_key_to_ru_key, list(
+ "q" = "й", "w" = "ц", "e" = "у", "r" = "к", "t" = "е", "y" = "н", "u" = "г", "i" = "ш", "o" = "щ", "p" = "з", "\[" = "х", "]" = "ъ",
+ "a" = "ф", "s" = "ы", "d" = "в", "f" = "а", "g" = "п", "h" = "р", "j"= "о", "k" = "л", "l" = "д", ";" = "ж", "'" = "э",
+ "z" = "я", "x" = "ч", "c" = "с", "v" = "м", "b" = "и", "n" = "т", "m" = "ь", "," = "б", "." = "ю"
+))
+
/proc/convert_ru_key_to_en_key(_key)
var/new_key = lowertext(_key)
new_key = GLOB.ru_key_to_en_key[new_key]
if(!new_key)
return _key
return uppertext(new_key)
+
+/proc/convert_en_key_to_ru_key(_key)
+ var/new_key = lowertext(_key)
+ new_key = GLOB.en_key_to_ru_key[new_key]
+ if(!new_key)
+ return _key
+ return uppertext(new_key)
diff --git a/modular_ss220/discord_link/code/discord.dm b/modular_ss220/discord_link/code/discord.dm
index 10d9bf464ff4..4260812fb712 100644
--- a/modular_ss220/discord_link/code/discord.dm
+++ b/modular_ss220/discord_link/code/discord.dm
@@ -51,10 +51,11 @@
return
if(href_list["observe"] || href_list["ready"] || href_list["late_join"])
- if (GLOB.configuration.database.enabled && GLOB.configuration.ss220_misc.force_discord_verification && !(client.prefs.discord_id || client.prefs.get_discord_id()))
- to_chat(usr, span_danger("Вам необходимо привязать дискорд-профиль к аккаунту!"))
- to_chat(usr, span_warning("Нажмите 'Привязка Discord' во вкладке 'Special Verbs' для получения инструкций."))
- return FALSE
+ if (GLOB.configuration.database.enabled && GLOB.configuration.ss220_misc.force_discord_verification)
+ if(!client.prefs.discord_id || !(client.prefs.get_discord_id() && client.prefs.discord_id))
+ to_chat(usr, span_danger("Вам необходимо привязать дискорд-профиль к аккаунту!"))
+ to_chat(usr, span_warning("Нажмите 'Привязка Discord' во вкладке 'Special Verbs' для получения инструкций."))
+ return FALSE
. = ..()
diff --git a/modular_ss220/emotes/_emotes.dm b/modular_ss220/emotes/_emotes.dm
index e562431422ad..3bf36d2bf040 100644
--- a/modular_ss220/emotes/_emotes.dm
+++ b/modular_ss220/emotes/_emotes.dm
@@ -1,4 +1,4 @@
/datum/modpack/emotes
name = "Панель эмоций"
- desc = "Добавляет панель эмоций в меню"
- author = "furior"
+ desc = "Добавляет панель эмоций в меню. Добавляет опциональное ТГУИ меню эмоций в IC"
+ author = "furior, larentoun, Aylong"
diff --git a/modular_ss220/emotes/_emotes.dme b/modular_ss220/emotes/_emotes.dme
index 331ad7a7f728..473a7a43ebfb 100644
--- a/modular_ss220/emotes/_emotes.dme
+++ b/modular_ss220/emotes/_emotes.dme
@@ -1,5 +1,8 @@
#include "_emotes.dm"
+#include "code/emote_keybindings.dm"
+#include "code/emote_panel_names.dm"
+#include "code/emote_panel.dm"
#include "code/emote.dm"
#include "code/emote_verbs.dm"
#include "code/emote_translations.dm"
diff --git a/modular_ss220/emotes/code/emote.dm b/modular_ss220/emotes/code/emote.dm
index 02c2f7ccec0e..696dabcd18bf 100644
--- a/modular_ss220/emotes/code/emote.dm
+++ b/modular_ss220/emotes/code/emote.dm
@@ -2,106 +2,64 @@
cooldown = 1.5 SECONDS
audio_cooldown = 3 SECONDS
-/datum/emote/living/carbon/human/gasp
- message = "задыхается!"
- message_mime = "кажется, задыхается!"
- emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
- unintentional_stat_allowed = UNCONSCIOUS
-
-/datum/emote/living/carbon/human/gasp/get_sound(mob/user)
- if(!ishuman(user))
- return
- var/mob/living/carbon/human/H = user
-
- if(H.is_muzzled())
- // If you're muzzled you're not making noise
- return
-
- if(H.health > 0)
- if(H.gender == FEMALE)
- return pick(H.dna.species.female_gasp_sound)
- else
- return pick(H.dna.species.gasp_sound)
-
- if(H.gender == FEMALE)
- return pick(H.dna.species.female_dying_gasp_sounds)
- else
- return pick(H.dna.species.male_dying_gasp_sounds)
+//////////////////////
+/// Living Emotes ///
+////////////////////
-/datum/emote/living/carbon/human/scream
- message = "кричит!"
- message_mime = "как будто кричит!"
- message_simple = "скулит."
- message_alien = "рычит!"
- message_postfix = "на %t!"
- muzzled_noises = list("очень громко")
- emote_type = EMOTE_VISIBLE | EMOTE_MOUTH
+/datum/emote/living/dance
+ cooldown = 5 SECONDS
+ var/dance_time = 3 SECONDS
-/datum/emote/living/carbon/human/scream/select_message_type(mob/user, msg, intentional)
+/datum/emote/living/dance/run_emote(mob/living/user, params, type_override, intentional)
. = ..()
- var/mob/living/carbon/human/H = user
- if(H.dna.species?.scream_verb)
- if(H.mind?.miming)
- return "как будто [H.dna.species?.scream_verb]!"
- else
- return "[H.dna.species?.scream_verb]!"
+ user.spin(dance_time, pick(0.1 SECONDS, 0.2 SECONDS))
+ user.do_jitter_animation(rand(8 SECONDS, 16 SECONDS), dance_time / 4)
-/datum/emote/living/carbon/human/scream/get_sound(mob/living/user)
- var/mob/living/carbon/human/human = user
- if(human.mind?.miming || !istype(human))
- return
- if(human.gender == FEMALE)
- return pick(human.dna.species.female_scream_sound)
+/datum/emote/living/choke/get_sound(mob/living/user)
+ . = ..()
+ if(user.gender == FEMALE)
+ return pick(
+ "modular_ss220/emotes/audio/female/choke_female_1.ogg",
+ "modular_ss220/emotes/audio/female/choke_female_2.ogg",
+ "modular_ss220/emotes/audio/female/choke_female_3.ogg")
else
- return pick(human.dna.species.male_scream_sound)
-
-/datum/emote/living/carbon/human/salute
- message = "салютует."
- message_param = "салютует %t."
- emote_type = EMOTE_VISIBLE
-
-/datum/emote/living/carbon/human/salute/get_sound(mob/living/user)
- var/mob/living/carbon/human/H = user
- if(!is_type_in_list(H.shoes, funny_shoes))
- return 'sound/effects/salute.ogg'
- if(is_type_in_list(H.shoes, funny_shoes))
- return 'sound/items/toysqueak1.ogg'
-
-/datum/emote/living/carbon/human/cry
- message = "плачет."
- muzzled_noises = list("слабо", "жалко", "грустно")
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
+ return pick(
+ "modular_ss220/emotes/audio/male/choke_male_1.ogg",
+ "modular_ss220/emotes/audio/male/choke_male_2.ogg",
+ "modular_ss220/emotes/audio/male/choke_male_3.ogg")
-/datum/emote/living/carbon/human/cry/get_sound(mob/living/user)
+/datum/emote/living/sigh/get_sound(mob/living/user)
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if(H.gender == FEMALE)
- return pick(H.dna.species.female_cry_sound)
+ return pick(H.dna.species.female_sigh_sound)
else
- return pick(H.dna.species.male_cry_sound)
-
-/datum/emote/living/carbon/giggle
- message = "хихикает."
- message_mime = "бесшумно хихикает!"
- muzzled_noises = list("булькающе")
-
-/datum/emote/living/carbon/giggle/get_sound(mob/living/user)
- if(!ishuman(user))
- return
- var/mob/living/carbon/human/H = user
+ return pick(H.dna.species.male_sigh_sound)
- if(H.gender == FEMALE)
- return pick(H.dna.species.female_giggle_sound)
+/datum/emote/living/sniff/get_sound(mob/living/user)
+ . = ..()
+ if(user.gender == FEMALE)
+ return "modular_ss220/emotes/audio/female/sniff_female.ogg"
else
- return pick(H.dna.species.male_giggle_sound)
+ return "modular_ss220/emotes/audio/male/sniff_male.ogg"
-/datum/emote/living/carbon/moan
- message = "стонет!"
- message_mime = "как будто стонет!"
- muzzled_noises = list("болезненно")
- emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
+/datum/emote/living/snore/get_sound(mob/living/user)
+ . = ..()
+ if(iscarbon(user))
+ return pick(
+ 'modular_ss220/emotes/audio/snore_1.ogg',
+ 'modular_ss220/emotes/audio/snore_2.ogg',
+ 'modular_ss220/emotes/audio/snore_3.ogg',
+ 'modular_ss220/emotes/audio/snore_4.ogg',
+ 'modular_ss220/emotes/audio/snore_5.ogg',
+ 'modular_ss220/emotes/audio/snore_6.ogg',
+ 'modular_ss220/emotes/audio/snore_7.ogg')
+
+//////////////////////
+/// Carbon Emotes ///
+////////////////////
/datum/emote/living/carbon/moan/get_sound(mob/living/user)
if(!ishuman(user))
@@ -113,27 +71,15 @@
else
return pick(H.dna.species.male_moan_sound)
-/datum/emote/living/carbon/laugh
- message = "смеется."
- message_mime = "бесшумно смеется!"
- message_param = "смеется над %t."
- muzzled_noises = list("счастливо", "весело")
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
-
-/datum/emote/living/carbon/laugh/get_sound(mob/living/user)
+/datum/emote/living/carbon/giggle/get_sound(mob/living/user)
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if(H.gender == FEMALE)
- return pick(H.dna.species.female_laugh_sound)
+ return pick(H.dna.species.female_giggle_sound)
else
- return pick(H.dna.species.male_laugh_sound)
-
-/datum/emote/living/carbon/yawn
- message = "зевает."
- muzzled_noises = list("устало", "медленно", "сонно")
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_SOUND
+ return pick(H.dna.species.male_giggle_sound)
/datum/emote/living/carbon/yawn/get_sound(mob/living/user)
. = ..()
@@ -147,58 +93,73 @@
"modular_ss220/emotes/audio/male/yawn_male_1.ogg",
"modular_ss220/emotes/audio/male/yawn_male_2.ogg")
-/datum/emote/living/carbon/human/sneeze
- message = "чихает."
- muzzled_noises = list("странно", "остро")
- emote_type = EMOTE_VISIBLE | EMOTE_MOUTH
-
-/datum/emote/living/carbon/human/sneeze/get_sound(mob/user)
+/datum/emote/living/carbon/laugh/get_sound(mob/living/user)
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if(H.gender == FEMALE)
- return pick(H.dna.species.female_sneeze_sound)
+ return pick(H.dna.species.female_laugh_sound)
else
- return pick(H.dna.species.male_sneeze_sound)
+ return pick(H.dna.species.male_laugh_sound)
-/datum/emote/living/sigh
- message = "вздыхает."
- message_mime = "беззвучно вздыхает."
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH
+/////////////////////
+/// Human Emotes ///
+///////////////////
-/datum/emote/living/sigh/get_sound(mob/living/user)
+/datum/emote/living/carbon/human/scream/select_message_type(mob/user, msg, intentional)
+ . = ..()
+ var/mob/living/carbon/human/H = user
+ if(H.dna.species?.scream_verb)
+ if(H.mind?.miming)
+ return "как будто [H.dna.species?.scream_verb]!"
+ else
+ return "[H.dna.species?.scream_verb]!"
+
+/datum/emote/living/carbon/human/scream/get_sound(mob/living/user)
+ var/mob/living/carbon/human/human = user
+ if(human.mind?.miming || !istype(human))
+ return
+ if(human.gender == FEMALE)
+ return pick(human.dna.species.female_scream_sound)
+ return pick(human.dna.species.male_scream_sound)
+
+/datum/emote/living/carbon/human/gasp/get_sound(mob/user)
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
+ if(H.is_muzzled())
+ // If you're muzzled you're not making noise
+ return
+
+ if(H.health > 0)
+ if(H.gender == FEMALE)
+ return pick(H.dna.species.female_gasp_sound)
+ else
+ return pick(H.dna.species.gasp_sound)
+
if(H.gender == FEMALE)
- return pick(H.dna.species.female_sigh_sound)
+ return pick(H.dna.species.female_dying_gasp_sounds)
else
- return pick(H.dna.species.male_sigh_sound)
+ return pick(H.dna.species.male_dying_gasp_sounds)
-/datum/emote/living/choke
- message = "подавился!"
- message_mime = "отчаянно хватается за горло!"
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH
+/datum/emote/living/carbon/human/salute/get_sound(mob/living/user)
+ var/mob/living/carbon/human/H = user
+ if(!is_type_in_list(H.shoes, funny_shoes))
+ return 'sound/effects/salute.ogg'
+ if(is_type_in_list(H.shoes, funny_shoes))
+ return 'sound/items/toysqueak1.ogg'
-/datum/emote/living/choke/get_sound(mob/living/user)
- . = ..()
- if(user.gender == FEMALE)
- return pick(
- "modular_ss220/emotes/audio/female/choke_female_1.ogg",
- "modular_ss220/emotes/audio/female/choke_female_2.ogg",
- "modular_ss220/emotes/audio/female/choke_female_3.ogg")
- else
- return pick(
- "modular_ss220/emotes/audio/male/choke_male_1.ogg",
- "modular_ss220/emotes/audio/male/choke_male_2.ogg",
- "modular_ss220/emotes/audio/male/choke_male_3.ogg")
+/datum/emote/living/carbon/human/cry/get_sound(mob/living/user)
+ if(!ishuman(user))
+ return
+ var/mob/living/carbon/human/H = user
-/datum/emote/living/carbon/human/sniff
- message = "нюхает."
- message_mime = "бесшумно нюхнул."
- emote_type = EMOTE_AUDIBLE
+ if(H.gender == FEMALE)
+ return pick(H.dna.species.female_cry_sound)
+ else
+ return pick(H.dna.species.male_cry_sound)
/datum/emote/living/carbon/human/sniff/get_sound(mob/living/user)
. = ..()
@@ -207,50 +168,52 @@
else
return "modular_ss220/emotes/audio/male/sniff_male.ogg"
-/datum/emote/living/sniff
- message = "нюхает."
- message_mime = "бесшумно нюхнул."
- emote_type = EMOTE_AUDIBLE
+/datum/emote/living/carbon/human/sneeze/get_sound(mob/user)
+ if(!ishuman(user))
+ return
+ var/mob/living/carbon/human/H = user
-/datum/emote/living/sniff/get_sound(mob/living/user)
- . = ..()
- if(user.gender == FEMALE)
- return "modular_ss220/emotes/audio/female/sniff_female.ogg"
+ if(H.gender == FEMALE)
+ return pick(H.dna.species.female_sneeze_sound)
else
- return "modular_ss220/emotes/audio/male/sniff_male.ogg"
-
-/datum/emote/living/snore
- message = "храпит."
- message_mime = "крепко спит."
- message_simple = "ворочается во сне."
- message_robot = "мечтает об электроовцах"
- emote_type = EMOTE_AUDIBLE | EMOTE_SOUND
- stat_allowed = CONSCIOUS
- max_stat_allowed = CONSCIOUS
- unintentional_stat_allowed = UNCONSCIOUS
- max_unintentional_stat_allowed = UNCONSCIOUS
+ return pick(H.dna.species.male_sneeze_sound)
-/datum/emote/living/snore/get_sound(mob/living/user)
- . = ..()
- if(iscarbon(user))
- return pick(
- 'modular_ss220/emotes/audio/snore_1.ogg',
- 'modular_ss220/emotes/audio/snore_2.ogg',
- 'modular_ss220/emotes/audio/snore_3.ogg',
- 'modular_ss220/emotes/audio/snore_4.ogg',
- 'modular_ss220/emotes/audio/snore_5.ogg',
- 'modular_ss220/emotes/audio/snore_6.ogg',
- 'modular_ss220/emotes/audio/snore_7.ogg')
+/datum/emote/living/carbon/human/fart
+ vary = TRUE
+ muzzle_ignore = TRUE
+ only_forced_audio = TRUE
+ bypass_unintentional_cooldown = TRUE
+ sound = 'modular_ss220/emotes/audio/fart.ogg'
-/datum/emote/living/dance
- message = "радостно танцует."
- cooldown = 5 SECONDS
- var/dance_time = 3 SECONDS
+/////////////////////
+/// New Emotes ///
+///////////////////
-/datum/emote/living/dance/run_emote(mob/living/user, params, type_override, intentional)
- . = ..()
- user.spin(dance_time, pick(0.1 SECONDS, 0.2 SECONDS))
- user.do_jitter_animation(rand(8 SECONDS, 16 SECONDS), dance_time / 4)
+/datum/emote/living/carbon/human/whistle
+ key = "whistle"
+ key_third_person = "whistles"
+ message = "свистит."
+ message_param = "свистит на %t."
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
+ sound = "modular_ss220/emotes/audio/whistle.ogg"
+
+/datum/emote/living/carbon/human/snuffle
+ key = "snuffle"
+ key_third_person = "snuffles"
+ message = "шмыгает носом."
+ message_param = "шмыгает носом на %t."
+
+/datum/emote/living/carbon/human/hem
+ key = "hem"
+ key_third_person = "hems"
+ message = "хмыкает."
+ message_param = "хмыкает %t."
+
+/datum/emote/living/carbon/human/scratch
+ key = "scratch"
+ key_third_person = "scratch"
+ message = "чешется."
+ message_param = "чешет %t."
/datum/emote/living/carbon/human/roar
key = "roar"
@@ -361,59 +324,3 @@
'modular_ss220/emotes/audio/kidan/wiggles_kidan_2.ogg',
'modular_ss220/emotes/audio/kidan/wiggles_kidan_3.ogg')
-/datum/emote/living/carbon/human/fart
- message = "пердит."
- message_param = "пердит в направлении %t."
- emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
- vary = TRUE
- muzzle_ignore = TRUE
- only_forced_audio = TRUE
- bypass_unintentional_cooldown = TRUE
- sound = 'modular_ss220/emotes/audio/fart.ogg'
-
-////////////////////
-/// Keybindings ///
-//////////////////
-/datum/keybinding/emote/carbon/human/hem
- linked_emote = /datum/emote/living/carbon/human/hem
- name = "Хныкать"
-
-/datum/keybinding/emote/carbon/human/scratch
- linked_emote = /datum/emote/living/carbon/human/scratch
- name = "Чесаться"
-
-/datum/keybinding/emote/carbon/human/whistle
- linked_emote = /datum/emote/living/carbon/human/whistle
- name = "Свистеть"
-
-/datum/keybinding/emote/carbon/human/snuffle
- linked_emote = /datum/emote/living/carbon/human/snuffle
- name = "Шмыгать носом"
-
-/datum/keybinding/emote/carbon/human/roar
- linked_emote = /datum/emote/living/carbon/human/roar
- name = "Рычать"
-
-/datum/keybinding/emote/carbon/human/rumble
- linked_emote = /datum/emote/living/carbon/human/rumble
- name = "Урчать"
-
-/datum/keybinding/emote/carbon/human/threat
- linked_emote = /datum/emote/living/carbon/human/threat
- name = "Угрожающе рычать"
-
-/datum/keybinding/emote/carbon/human/purr
- linked_emote = /datum/emote/living/carbon/human/purr
- name = "Мурчать"
-
-/datum/keybinding/emote/carbon/human/purrl
- linked_emote = /datum/emote/living/carbon/human/purrl
- name = "Мурчать подольше"
-
-/datum/keybinding/emote/carbon/human/waves
- linked_emote = /datum/emote/living/carbon/human/waves_k
- name = "Взмахнуть усиками"
-
-/datum/keybinding/emote/carbon/human/wiggles
- linked_emote = /datum/emote/living/carbon/human/wiggles
- name = "Шевелить усиками"
diff --git a/modular_ss220/emotes/code/emote_keybindings.dm b/modular_ss220/emotes/code/emote_keybindings.dm
new file mode 100644
index 000000000000..f62395dc7dd5
--- /dev/null
+++ b/modular_ss220/emotes/code/emote_keybindings.dm
@@ -0,0 +1,43 @@
+/datum/keybinding/emote/carbon/human/hem
+ linked_emote = /datum/emote/living/carbon/human/hem
+ name = "Хныкать"
+
+/datum/keybinding/emote/carbon/human/scratch
+ linked_emote = /datum/emote/living/carbon/human/scratch
+ name = "Чесаться"
+
+/datum/keybinding/emote/carbon/human/whistle
+ linked_emote = /datum/emote/living/carbon/human/whistle
+ name = "Свистеть"
+
+/datum/keybinding/emote/carbon/human/snuffle
+ linked_emote = /datum/emote/living/carbon/human/snuffle
+ name = "Шмыгать носом"
+
+/datum/keybinding/emote/carbon/human/roar
+ linked_emote = /datum/emote/living/carbon/human/roar
+ name = "Рычать"
+
+/datum/keybinding/emote/carbon/human/rumble
+ linked_emote = /datum/emote/living/carbon/human/rumble
+ name = "Урчать"
+
+/datum/keybinding/emote/carbon/human/threat
+ linked_emote = /datum/emote/living/carbon/human/threat
+ name = "Угрожающе рычать"
+
+/datum/keybinding/emote/carbon/human/purr
+ linked_emote = /datum/emote/living/carbon/human/purr
+ name = "Мурчать"
+
+/datum/keybinding/emote/carbon/human/purrl
+ linked_emote = /datum/emote/living/carbon/human/purrl
+ name = "Мурчать подольше"
+
+/datum/keybinding/emote/carbon/human/waves
+ linked_emote = /datum/emote/living/carbon/human/waves_k
+ name = "Взмахнуть усиками"
+
+/datum/keybinding/emote/carbon/human/wiggles
+ linked_emote = /datum/emote/living/carbon/human/wiggles
+ name = "Шевелить усиками"
diff --git a/modular_ss220/emotes/code/emote_panel.dm b/modular_ss220/emotes/code/emote_panel.dm
new file mode 100644
index 000000000000..f956f38e30b9
--- /dev/null
+++ b/modular_ss220/emotes/code/emote_panel.dm
@@ -0,0 +1,60 @@
+/datum/emote_panel
+ var/list/blacklisted_emotes = list("me", "help")
+
+/datum/emote_panel/ui_static_data(mob/user)
+ var/list/data = list()
+
+ var/list/emotes = list()
+ var/list/keys = list()
+
+ for(var/key in GLOB.emote_list)
+ for(var/datum/emote/emote in GLOB.emote_list[key])
+ if(emote.key in keys)
+ continue
+ if(emote.key in blacklisted_emotes)
+ continue
+ if(emote.can_run_emote(user, status_check = FALSE, intentional = FALSE))
+ keys += emote.key
+ emotes += list(list(
+ "key" = emote.key,
+ "name" = emote.name,
+ "emote_path" = emote.type,
+ "hands" = emote.hands_use_check,
+ "visible" = emote.emote_type & EMOTE_VISIBLE,
+ "audible" = emote.emote_type & EMOTE_AUDIBLE,
+ "sound" = !isnull(emote.get_sound(user)),
+ "targettable" = emote.message_param,
+ ))
+
+ data["emotes"] = emotes
+
+ return data
+
+/datum/emote_panel/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
+ . = ..()
+ if(.)
+ return
+ switch(action)
+ if("play_emote")
+ var/emote_path = params["emote_path"]
+ var/useTarget = params["useTarget"]
+ var/datum/emote/emote = new emote_path()
+ var/emote_act = emote.key
+ var/emote_param
+ if(emote.message_param && useTarget == "true")
+ emote_param = input(usr, "Дополните эмоцию", emote.message_param)
+ usr.emote(emote_act, message = emote_param, intentional = TRUE)
+
+/datum/emote_panel/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.always_state)
+ ui = SStgui.try_update_ui(user, src, ui)
+ if(!ui)
+ ui = new(user, src, ui_key, "EmotePanel", "Панель эмоций", 500, 550, master_ui, state)
+ ui.open()
+ ui.set_autoupdate(FALSE)
+
+/mob/living/verb/emote_panel()
+ set name = "Панель эмоций"
+ set category = "IC"
+
+ var/static/datum/emote_panel/emote_panel = new
+ emote_panel.ui_interact(src)
diff --git a/modular_ss220/emotes/code/emote_panel_names.dm b/modular_ss220/emotes/code/emote_panel_names.dm
new file mode 100644
index 000000000000..b9758a85c1d1
--- /dev/null
+++ b/modular_ss220/emotes/code/emote_panel_names.dm
@@ -0,0 +1,425 @@
+/datum/emote
+ var/name
+
+/datum/emote/New()
+ . = ..()
+ if(!name)
+ name = key
+
+// Emote Living
+
+/datum/emote/flip
+ name = "кувырнуться"
+
+/datum/emote/spin
+ name = "покрутиться"
+
+/datum/emote/living/blush
+ name = "покраснеть"
+
+/datum/emote/living/bow
+ name = "покланиться"
+
+/datum/emote/living/burp
+ name = "рыгнуть"
+
+/datum/emote/living/choke
+ name = "подавиться"
+
+/datum/emote/living/collapse
+ name = "упасть"
+
+/datum/emote/living/dance
+ name = "потанцевать"
+
+/datum/emote/living/deathgasp
+ name = "последнее дыхание"
+
+/datum/emote/living/drool
+ name = "пустить слюни"
+
+/datum/emote/living/quiver
+ name = "трепетать"
+
+/datum/emote/living/frown
+ name = "похмуриться"
+
+/datum/emote/living/gag
+ name = "gag"
+
+/datum/emote/living/glare
+ name = "просверлить взглядом"
+
+/datum/emote/living/grin
+ name = "ухмыльнуться"
+
+/datum/emote/living/groan
+ name = "болезненно простонать"
+
+/datum/emote/living/grimace
+ name = "построить гримасу"
+
+/datum/emote/living/jump
+ name = "прыгнуть"
+
+/datum/emote/living/kiss
+ name = "подготовить поцелуй"
+
+/datum/emote/living/look
+ name = "посмотреть"
+
+/datum/emote/living/bshake
+ name = "потрястись"
+
+/datum/emote/living/shudder
+ name = "содрогнуться"
+
+/datum/emote/living/point
+ name = "указать"
+
+/datum/emote/living/pout
+ name = "надуть губы"
+
+/datum/emote/living/scream
+ name = "покричать"
+
+/datum/emote/living/shake
+ name = "покачать головой"
+
+/datum/emote/living/shiver
+ name = "подрожать"
+
+/datum/emote/living/sigh
+ name = "вздохнуть"
+
+/datum/emote/living/sigh/happy
+ name = "удовлетворённо вздохнуть"
+
+/datum/emote/living/sit
+ name = "сесть"
+
+/datum/emote/living/smile
+ name = "улыбнуться"
+
+/datum/emote/living/smug
+ name = "самодовольно улыбнуться"
+
+/datum/emote/living/sniff
+ name = "понюхать"
+
+/datum/emote/living/snore
+ name = "похрапеть"
+
+/datum/emote/living/stare
+ name = "уставиться"
+
+/datum/emote/living/strech
+ name = "протянуть руки"
+
+/datum/emote/living/sulk
+ name = "обидеться"
+
+/datum/emote/living/sway
+ name = "покачаться"
+
+/datum/emote/living/tilt
+ name = "наклонить голову"
+
+/datum/emote/living/tremble
+ name = "подрожать в страхе"
+
+/datum/emote/living/twitch
+ name = "сильно дернуться"
+
+/datum/emote/living/twitch_s
+ name = "дернуться"
+
+/datum/emote/living/carbon/wave
+ name = "помахать рукой"
+
+/datum/emote/living/whimper
+ name = "поскулить"
+
+/datum/emote/living/wsmile
+ name = "слабо улыбнуться"
+
+/datum/emote/living/swear
+ name = "поругаться"
+
+// Emote Brain
+
+/datum/emote/living/carbon/brain/alarm
+ name = "alarm"
+
+/datum/emote/living/carbon/brain/alert
+ name = "alert"
+
+/datum/emote/living/carbon/brain/flash
+ name = "flash"
+
+/datum/emote/living/carbon/brain/notice
+ name = "notice"
+
+/datum/emote/living/carbon/brain/whistle
+ name = "whistle"
+
+/datum/emote/living/carbon/brain/beep
+ name = "издать сигнал"
+
+// Emote Carbon
+
+/datum/emote/living/carbon/blink
+ name = "моргнуть"
+
+/datum/emote/living/carbon/blink_r
+ name = "быстро моргать"
+
+/datum/emote/living/carbon/cough
+ name = "покашлять"
+
+/datum/emote/living/carbon/cross
+ name = "скрестить руки"
+
+/datum/emote/living/carbon/chuckle
+ name = "усмехнуться"
+
+/datum/emote/living/carbon/faint
+ name = "потерять сознание"
+
+/datum/emote/living/carbon/giggle
+ name = "похихикать"
+
+/datum/emote/living/carbon/moan
+ name = "постонать"
+
+/datum/emote/living/carbon/roll
+ name = "покатиться"
+
+/datum/emote/living/carbon/sign
+ name = "показать число"
+
+/datum/emote/living/carbon/sign/signal
+ name = "показать пальцы"
+
+/datum/emote/living/carbon/yawn
+ name = "зевнуть"
+
+/datum/emote/living/carbon/gurgle
+ name = "побулькать"
+
+/datum/emote/living/carbon/inhale
+ name = "вдохнуть"
+
+/datum/emote/living/carbon/inhale/sharp
+ name = "глубоко вдохнуть"
+
+/datum/emote/living/carbon/kiss
+ name = "поцеловать"
+
+/datum/emote/living/carbon/exhale
+ name = "выдохнуть"
+
+/datum/emote/living/carbon/laugh
+ name = "посмеяться"
+
+/datum/emote/living/carbon/scowl
+ name = "сердито посмотреть"
+
+// Emote Alien
+
+/datum/emote/living/carbon/alien/humanoid/gnarl
+ name = "оскалиться"
+
+/datum/emote/living/carbon/alien/humanoid/hiss
+ name = "пошипеть"
+
+/datum/emote/living/carbon/alien/humanoid/roar
+ name = "прорычать"
+
+// Emote Human
+
+/datum/emote/living/carbon/human/airguitar
+ name = "поиграть на воображаемой гитаре"
+
+/datum/emote/living/carbon/human/clap
+ name = "похлопать"
+
+/datum/emote/living/carbon/human/crack
+ name = "похрустеть пальцами"
+
+/datum/emote/living/carbon/human/cry
+ name = "поплакать"
+
+/datum/emote/living/carbon/human/eyebrow
+ name = "приподнять бровь"
+
+/datum/emote/living/carbon/human/wince
+ name = "поморщиться"
+
+/datum/emote/living/carbon/human/squint
+ name = "прищуриться"
+
+/datum/emote/living/carbon/human/facepalm
+ name = "хлопнуть по лбу"
+
+/datum/emote/living/carbon/human/palm
+ name = "протянуть руку"
+
+/datum/emote/living/carbon/human/flap
+ name = "хлопнуть крыльями"
+
+/datum/emote/living/carbon/human/flutter
+ name = "сердито хлопнуть крыльями"
+
+/datum/emote/living/carbon/human/gasp
+ name = "задохнуться"
+
+/datum/emote/living/carbon/human/grumble
+ name = "поворчать"
+
+/datum/emote/living/carbon/human/highfive/handshake
+ name = "дать рукопожатие"
+
+/datum/emote/living/carbon/human/hug
+ name = "обнять"
+
+/datum/emote/living/carbon/human/mumble
+ name = "пробормотать"
+
+/datum/emote/living/carbon/human/scratch
+ name = "почесаться"
+
+/datum/emote/living/carbon/human/scream
+ name = "покричать"
+
+/datum/emote/living/carbon/human/scream/screech
+ name = "повизжать"
+
+/datum/emote/living/carbon/human/sneeze
+ name = "чихнуть"
+
+/datum/emote/living/carbon/human/slap
+ name = "подготовить шлепок"
+
+/datum/emote/living/carbon/human/snap
+ name = "щелкнуть пальцами"
+
+/datum/emote/living/carbon/human/fart
+ name = "пёрнуть"
+
+/datum/emote/living/carbon/human/wag
+ name = "помахать хвостом"
+
+/datum/emote/living/carbon/human/wag/stop
+ name = "остановить хвост"
+
+/datum/emote/living/carbon/human/wink
+ name = "подмигнуть"
+
+/datum/emote/living/carbon/human/highfive
+ name = "предоставить пятюню"
+
+/datum/emote/living/carbon/human/highfive/dap
+ name = "предоставить кулак"
+
+/datum/emote/living/carbon/human/pale
+ name = "побледнеть"
+
+/datum/emote/living/carbon/human/raise
+ name = "поднять руку"
+
+/datum/emote/living/carbon/human/salute
+ name = "салютировать"
+
+/datum/emote/living/carbon/human/shrug
+ name = "пожать плечами"
+
+/datum/emote/living/carbon/human/wag
+ name = "махать хвостом"
+
+/datum/emote/living/carbon/human/nod
+ name = "кивнуть"
+
+/datum/emote/living/carbon/human/monkey/gnarl
+ name = "оскалиться"
+
+/datum/emote/living/carbon/human/monkey/roll
+ name = "покатиться"
+
+/datum/emote/living/carbon/human/monkey/tail
+ name = "помахать хвостом"
+
+// Emote Silicon
+
+/datum/emote/living/silicon/scream
+ name = "покричать"
+
+/datum/emote/living/silicon/ping
+ name = "посигналить"
+
+/datum/emote/living/silicon/buzz
+ name = "пожжужать"
+
+/datum/emote/living/silicon/buzz2
+ name = "пожжуать громко"
+
+/datum/emote/living/silicon/beep
+ name = "бип"
+
+/datum/emote/living/silicon/boop
+ name = "буп"
+
+/datum/emote/living/silicon/yes
+ name = "положительно"
+
+/datum/emote/living/silicon/no
+ name = "отрицательно"
+
+/datum/emote/living/silicon/law
+ name = "закон"
+
+/datum/emote/living/silicon/halt
+ name = "остановитесь"
+
+// Species specific
+
+/datum/emote/living/carbon/human/howl
+ name = "повыть"
+
+/datum/emote/living/carbon/human/growl
+ name = "порычать"
+
+// New Emotes
+
+/datum/emote/living/carbon/human/whistle
+ name = "Свистеть"
+
+/datum/emote/living/carbon/human/snuffle
+ name = "Шмыгать"
+
+/datum/emote/living/carbon/human/hem
+ name = "Хмыкнуть"
+
+/datum/emote/living/carbon/human/scratch
+ name = "Почесаться"
+
+/datum/emote/living/carbon/human/roar
+ name = "Рычать"
+
+/datum/emote/living/carbon/human/rumble
+ name = "Ворчать"
+
+/datum/emote/living/carbon/human/threat
+ name = "Угрожать"
+
+/datum/emote/living/carbon/human/purr
+ name = "Мурчать"
+
+/datum/emote/living/carbon/human/purrl
+ name = "Мурчать+"
+
+/datum/emote/living/carbon/human/waves_k
+ name = "Взмах усиков"
+
+/datum/emote/living/carbon/human/wiggles
+ name = "Шевелить усики"
diff --git a/modular_ss220/emotes/code/emote_translations.dm b/modular_ss220/emotes/code/emote_translations.dm
index 624381bed444..8d3033658ce4 100644
--- a/modular_ss220/emotes/code/emote_translations.dm
+++ b/modular_ss220/emotes/code/emote_translations.dm
@@ -1,6 +1,7 @@
//////////////////////
/// Living Emotes ///
////////////////////
+
/datum/emote/living/scream
message = "кричит!"
message_mime = "как будто кричит!"
@@ -27,9 +28,17 @@
message = "отрыгивает."
message_mime = "довольно противно открывает рот."
+/datum/emote/living/choke
+ message = "подавился!"
+ message_mime = "отчаянно хватается за горло!"
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH
+
/datum/emote/living/collapse
message = "падает!"
+/datum/emote/living/dance
+ message = "радостно танцует."
+
/datum/emote/living/deathgasp
message = "цепенеет и расслабляется, взгляд становится пустым и безжизненным..."
message_alien = "цепенеет и расслабляется, взгляд становится пустым и безжизненным..."
@@ -88,6 +97,11 @@
/datum/emote/living/shiver
message = "дрожит."
+/datum/emote/living/sigh
+ message = "вздыхает."
+ message_mime = "беззвучно вздыхает."
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH
+
/datum/emote/living/sigh/happy
message = "Удовлетворённо вздыхает."
message_mime = "кажется, удовлетворенно вздыхает"
@@ -104,6 +118,19 @@
message = "самодовольно ухмыляется."
message_param = "самодовольно ухмыляется, смотря на %t."
+/datum/emote/living/sniff
+ message = "нюхает."
+ message_mime = "бесшумно нюхнул."
+ emote_type = EMOTE_AUDIBLE
+
+/datum/emote/living/snore
+ message = "храпит."
+ message_mime = "крепко спит."
+ message_simple = "ворочается во сне."
+ message_robot = "мечтает об электроовцах"
+ stat_allowed = CONSCIOUS
+ max_stat_allowed = CONSCIOUS
+
/datum/emote/living/nightmare
message = "ворочается во сне."
@@ -152,6 +179,7 @@
//////////////////////
/// Carbon Emotes ///
////////////////////
+
/datum/emote/living/carbon/blink
message = "моргает."
@@ -159,17 +187,27 @@
key = "blink_r"
message = "быстро моргает."
-/datum/emote/living/carbon/human/clap
- message = "хлопает."
- message_mime = "бесшумно хлопает."
- message_param = "хлопает %t."
- emote_type = EMOTE_AUDIBLE | EMOTE_VISIBLE
-
/datum/emote/living/carbon/chuckle
message = "усмехается."
message_mime = "бесшумно усмехается."
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
muzzled_noises = list("радостно", "оптимистично")
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
+
+/datum/emote/living/carbon/cough
+ message = "кашляет!"
+ message_mime = "бесшумно кашляет!"
+ emote_type = EMOTE_VISIBLE | EMOTE_MOUTH | EMOTE_AUDIBLE
+
+/datum/emote/living/carbon/moan
+ message = "стонет!"
+ message_mime = "как будто стонет!"
+ muzzled_noises = list("болезненно")
+ emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
+
+/datum/emote/living/carbon/giggle
+ message = "хихикает."
+ message_mime = "бесшумно хихикает!"
+ muzzled_noises = list("булькающе")
/datum/emote/living/carbon/gurgle
message = "издает неприятное бульканье."
@@ -191,9 +229,21 @@
message = "машет."
message_param = "машет %t."
+/datum/emote/living/carbon/yawn
+ message = "зевает."
+ muzzled_noises = list("устало", "медленно", "сонно")
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_SOUND
+
/datum/emote/living/carbon/exhale
message = "выдыхает."
+/datum/emote/living/carbon/laugh
+ message = "смеется."
+ message_mime = "бесшумно смеется!"
+ message_param = "смеется над %t."
+ muzzled_noises = list("счастливо", "весело")
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
+
/datum/emote/living/carbon/scowl
message = "хмурится."
@@ -211,17 +261,24 @@
/datum/emote/living/carbon/faint
message = "падает в обморок."
-/datum/emote/living/carbon/cough
- message = "кашляет!"
- message_mime = "бесшумно кашляет!"
- emote_type = EMOTE_VISIBLE | EMOTE_MOUTH | EMOTE_AUDIBLE
-
/////////////////////
/// Human Emotes ///
///////////////////
+
/datum/emote/living/carbon/human/airguitar
message = "натягивает струны и бьет головой, как шимпанзе в сафари."
+/datum/emote/living/carbon/human/clap
+ message = "хлопает."
+ message_mime = "бесшумно хлопает."
+ message_param = "хлопает %t."
+ emote_type = EMOTE_AUDIBLE | EMOTE_VISIBLE
+
+/datum/emote/living/carbon/human/cry
+ message = "плачет."
+ muzzled_noises = list("слабо", "жалко", "грустно")
+ emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
+
/datum/emote/living/carbon/human/crack
message = "хрустит пальцами."
@@ -229,6 +286,21 @@
message = "приподнимает бровь."
message_param = "приподнимает бровь на %t."
+/datum/emote/living/carbon/human/wince
+ message = "морщиться."
+ message_param = "морщиться на %t."
+
+/datum/emote/living/carbon/human/squint
+ message = "прищуривается."
+ message_param = "прищуривается на %t."
+
+/datum/emote/living/carbon/human/facepalm
+ message = "хлопает себя по лбу."
+
+/datum/emote/living/carbon/human/palm
+ message = "ожидающе протягивает руку."
+ message_param = "ожидающе протягивает руку к %t."
+
/datum/emote/living/carbon/human/grumble
message = "ворчит!"
message_mime = "как будто ворчит!"
@@ -258,6 +330,11 @@
/datum/emote/living/carbon/human/raise
message = "поднимает руку."
+/datum/emote/living/carbon/human/salute
+ message = "салютует."
+ message_param = "салютует %t."
+ emote_type = EMOTE_VISIBLE
+
/datum/emote/living/carbon/human/shrug
message = "пожимает плечами."
@@ -265,6 +342,10 @@
message = "затягивается сигаретой и выдыхает дым в форме своего имени."
message_param = "тупо"
+/datum/emote/living/carbon/human/sneeze
+ message = "чихает."
+ muzzled_noises = list("странно", "остро")
+
/datum/emote/living/carbon/human/wink
message = "подмигивает."
@@ -273,6 +354,11 @@
message_param = "щелкает пальцами на %t."
emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
+/datum/emote/living/carbon/human/fart
+ message = "пердит."
+ message_param = "пердит в направлении %t."
+ emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
+
/datum/emote/living/carbon/sign/signal
message_param = "показывает %t пальцев."
param_desc = "число(0-10)"
@@ -283,6 +369,20 @@
/datum/emote/living/carbon/human/wag/stop
message = "перестает вилять хвостом."
+/datum/emote/living/carbon/human/scream
+ message = "кричит!"
+ message_mime = "как будто кричит!"
+ message_simple = "скулит."
+ message_alien = "рычит!"
+ message_postfix = "на %t!"
+ muzzled_noises = list("очень громко")
+ emote_type = EMOTE_VISIBLE | EMOTE_MOUTH
+
+/datum/emote/living/carbon/human/gasp
+ message = "задыхается!"
+ message_mime = "кажется, задыхается!"
+ emote_type = EMOTE_VISIBLE | EMOTE_AUDIBLE
+
/datum/emote/living/carbon/human/scream/screech
message = "визжит!"
message_param = "визжит на %t!"
@@ -330,7 +430,6 @@
message = "жужжит."
message_param = "жужжит на %t."
-
/datum/emote/living/carbon/human/drask_talk/hum
message = "напевает."
message_param = "напевает %t."
@@ -374,32 +473,6 @@
/datum/emote/living/carbon/human/crack/diona
message = "трещит ветками!"
-/datum/emote/living/carbon/human/snuffle
- key = "snuffle"
- key_third_person = "snuffles"
- message = "шмыгает носом."
- message_param = "шмыгает носом на %t."
-
-/datum/emote/living/carbon/human/hem
- key = "hem"
- key_third_person = "hems"
- message = "хмыкает."
- message_param = "хмыкает %t."
-
-/datum/emote/living/carbon/human/scratch
- key = "scratch"
- key_third_person = "scratch"
- message = "чешется."
- message_param = "чешет %t."
-
-/datum/emote/living/carbon/human/whistle
- key = "whistle"
- key_third_person = "whistles"
- message = "свистит."
- message_param = "свистит на %t."
- emote_type = EMOTE_AUDIBLE | EMOTE_MOUTH | EMOTE_VISIBLE
- sound = "modular_ss220/emotes/audio/whistle.ogg"
-
/datum/emote/living/carbon/human/warble
message = "издаёт трель."
message_param = "издаёт трель для %t."
@@ -413,6 +486,7 @@
/////////////////////
/// Alien Emotes ///
///////////////////
+
/datum/emote/living/carbon/alien/humanoid/roar
message = "ревет!"
message_param = "ревет на %t!"
@@ -428,6 +502,7 @@
/////////////////////
/// Brain Emotes ///
///////////////////
+
/datum/emote/living/carbon/brain/alarm
message = "подает сигнал тревоги."
self_message = "Вы подаете сигнал тревоги."
diff --git a/modular_ss220/keybindings/code/human_keybinds.dm b/modular_ss220/keybindings/code/human_keybinds.dm
index a9de087e40fb..4c3cb922375c 100644
--- a/modular_ss220/keybindings/code/human_keybinds.dm
+++ b/modular_ss220/keybindings/code/human_keybinds.dm
@@ -15,5 +15,5 @@
keys = list("H")
/datum/keybinding/human/parry
- name = "Паррировать"
+ name = "Парировать"
keys = list("Space")
diff --git a/modular_ss220/maps220/code/Areas/away.dm b/modular_ss220/maps220/code/Areas/away.dm
index 3ea0ecea2c60..247682efe2ec 100644
--- a/modular_ss220/maps220/code/Areas/away.dm
+++ b/modular_ss220/maps220/code/Areas/away.dm
@@ -100,3 +100,8 @@
/area/ruin/space/spacehotelv1/barber
name = "Hotel Barber"
icon_state = "awaycontent22"
+
+/area/lavaland/surface/outdoors/legion
+ name = "Necropolis"
+ no_teleportlocs = TRUE
+ tele_proof = TRUE
diff --git a/modular_ss220/maps220/code/Areas/gateway.dm b/modular_ss220/maps220/code/Areas/gateway.dm
index a84829f8ed97..523c85f8c15b 100644
--- a/modular_ss220/maps220/code/Areas/gateway.dm
+++ b/modular_ss220/maps220/code/Areas/gateway.dm
@@ -269,3 +269,22 @@
name = "MC-16"
icon_state = "awaycontent9"
ambientsounds = list('modular_ss220/aesthetics_sounds/sound/area_ambient/ambient_pulse1.ogg', 'modular_ss220/aesthetics_sounds/sound/area_ambient/ambient_pulse2.ogg')
+
+/* Caves */
+/area/awaymission/caves
+ name = "Caves"
+ icon_state = "away"
+ report_alerts = FALSE
+ always_unpowered = TRUE
+ dynamic_lighting = DYNAMIC_LIGHTING_FORCED
+
+/area/awaymission/caves/build
+ name = "Abandoned building"
+ icon_state = "awaycontent1"
+ always_unpowered = FALSE
+ requires_power = FALSE
+
+/area/awaymission/caves/build/reqpower_build
+ name = "Research Сomplex ''Mirror''"
+ icon_state = "awaycontent2"
+ requires_power = TRUE
diff --git a/modular_ss220/maps220/code/Areas/station.dm b/modular_ss220/maps220/code/Areas/station.dm
index c7974a0bafcb..41603beeac59 100644
--- a/modular_ss220/maps220/code/Areas/station.dm
+++ b/modular_ss220/maps220/code/Areas/station.dm
@@ -2,6 +2,9 @@
/area/station/security/checkpoint/south
name = "\improper Escape Security Checkpoint"
+/area/station/security/visitingroom
+ name = "\improper Brig Visiting Room"
+ icon_state = "brig"
/area/station/bridge/checkpoint
name = "\improper Command Checkpoint"
diff --git a/modular_ss220/maps220/code/directions.dm b/modular_ss220/maps220/code/directions.dm
index b29cfa572f3e..1bc20a75e997 100644
--- a/modular_ss220/maps220/code/directions.dm
+++ b/modular_ss220/maps220/code/directions.dm
@@ -498,6 +498,36 @@
pixel_x = 24
dir = 4
+/obj/machinery/power/apc/off_station/south
+ pixel_y = -24
+
+/obj/machinery/power/apc/off_station/north
+ pixel_y = 24
+ dir = 1
+
+/obj/machinery/power/apc/off_station/west
+ pixel_x = -24
+ dir = 8
+
+/obj/machinery/power/apc/off_station/east
+ pixel_x = 24
+ dir = 4
+
+/obj/machinery/power/apc/off_station/empty_charge/south
+ pixel_y = -24
+
+/obj/machinery/power/apc/off_station/empty_charge/north
+ pixel_y = 24
+ dir = 1
+
+/obj/machinery/power/apc/off_station/empty_charge/west
+ pixel_x = -24
+ dir = 8
+
+/obj/machinery/power/apc/off_station/empty_charge/east
+ pixel_x = 24
+ dir = 4
+
/* Wall Tanks */
/obj/structure/reagent_dispensers/fueltank/chem
name = "\improper fuel tank"
diff --git a/modular_ss220/maps220/code/effects.dm b/modular_ss220/maps220/code/effects.dm
index 21379dad8bce..27063f82f869 100644
--- a/modular_ss220/maps220/code/effects.dm
+++ b/modular_ss220/maps220/code/effects.dm
@@ -51,3 +51,12 @@
/obj/effect/turf_decal/siding/black/full
icon_state = "bs_full"
+
+/* Awaymission - Caves */
+//Decals
+/obj/effect/decal/solgov_logo
+ name = "SolGov logo"
+ icon = 'modular_ss220/maps220/icons/syndie_logo.dmi'
+ icon_state = "sol_logo1"
+ layer = TURF_LAYER
+ desc = "Glory to humanity!"
diff --git a/modular_ss220/maps220/code/floors.dm b/modular_ss220/maps220/code/floors.dm
index 178ea0f26f90..1fadff5f3a08 100644
--- a/modular_ss220/maps220/code/floors.dm
+++ b/modular_ss220/maps220/code/floors.dm
@@ -19,7 +19,7 @@
/turf/simulated/floor/beach/away/water/deep/dense_canpass/CanPass (atom/movable/mover, border_dir)
.=..()
- if(isliving(mover))
+ if(isliving(mover) || ismecha (mover))
return FALSE
/* Lavaland */
diff --git a/modular_ss220/maps220/code/mobs.dm b/modular_ss220/maps220/code/mobs.dm
index 37afeff08f59..44ab030adb96 100644
--- a/modular_ss220/maps220/code/mobs.dm
+++ b/modular_ss220/maps220/code/mobs.dm
@@ -188,6 +188,29 @@
melee_damage_upper = 30
speed = -1
+/mob/living/simple_animal/hostile/skeleton/deadwizard
+ name = "древний маг"
+ desc = "Древний волшебник, тысячелетиями властвующий над проклятым могильником."
+ icon = 'modular_ss220/maps220/icons/simple_human.dmi'
+ icon_living = "deadwizard"
+ icon_state = "deadwizard"
+ maxHealth = 300
+ health = 300
+ ranged = 1
+ rapid = 4
+ rapid_fire_delay = 1
+ retreat_distance = 4
+ minimum_distance = 4
+ del_on_death = 1
+ projectiletype = /obj/item/projectile/magic/arcane_barrage
+ projectilesound = 'sound/magic/blind.ogg'
+ loot = list(
+ /obj/effect/decal/remains/human,
+ /obj/item/clothing/head/crown,
+ /obj/item/clothing/suit/imperium_monk,
+ /obj/effect/particle_effect/smoke/bad,
+ /obj/item/necromantic_stone)
+
/* Vox Raiders */
/mob/living/simple_animal/hostile/vox
name = "Vox Raider"
@@ -569,3 +592,31 @@
faction = list("spooky")
del_on_death = TRUE
random_color = FALSE
+
+/* Clown */
+/mob/living/simple_animal/hostile/clown/mutant
+ name = "неизвестный"
+ desc = "Что бы это не было, уничтожь его!"
+ icon = 'modular_ss220/maps220/icons/clown_mobs.dmi'
+ icon_state = "mutant"
+ icon_living = "mutant"
+ move_resist = INFINITY
+ turns_per_move = 10
+ response_help = "осторожно погружает палец в"
+ response_disarm = "втягивается в"
+ response_harm = "втягивается в"
+ speak = list("уааааааааа-хааууууууаааааа!", "ААААаааууАААУааХУААААА!!!", "уууууууухххх.... ххххх-ххьооооонкккхх....", "ХХХХУУАААООНККК!!!")
+ speak_emote = list("извивается", "корчится", "пульсирует", "бурлит", "расползается")
+ speak_chance = 10
+ tts_seed = "Kleiner"
+ maxHealth = 500
+ health = 500
+ pixel_x = -16
+ speed = 3
+ move_to_delay = 3
+ harm_intent_damage = 10
+ melee_damage_lower = 30
+ melee_damage_upper = 40
+ attacktext = "неловко замахивается на"
+ loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/effect/gibspawner/human, /obj/item/grown/bananapeel, /obj/item/bikehorn/golden)
+ wander = FALSE
diff --git a/modular_ss220/maps220/code/objects.dm b/modular_ss220/maps220/code/objects.dm
index 12c7d4980170..f0ff355f5b70 100644
--- a/modular_ss220/maps220/code/objects.dm
+++ b/modular_ss220/maps220/code/objects.dm
@@ -60,6 +60,22 @@
icon_opened = "crate_barrel_open"
icon_closed = "crate_barrel"
+/obj/structure/closet/crate/grave
+ name = "grave mound"
+ desc = "A simple and reliable way to keep the dead away."
+ icon = 'modular_ss220/maps220/icons/crates.dmi'
+ icon_state = "grave"
+ icon_opened = "graveopen"
+ icon_closed = "grave"
+ open_sound = 'sound/effects/shovel_dig.ogg'
+ close_sound = 'sound/effects/shovel_dig.ogg'
+
+/obj/structure/closet/crate/grave/gravelead
+ name = "ominous grave mound"
+ icon_state = "grave_lead"
+ icon_opened = "grave_leadopen"
+ icon_closed = "grave_lead"
+
/* Syndicate Base - Mothership */
// Machinery
/obj/machinery/photocopier/syndie
@@ -231,3 +247,58 @@
projectile = /obj/item/projectile/bullet/midbullet2
fire_sound = 'sound/weapons/gunshots/gunshot_smg.ogg'
projectile_energy_cost = 14
+
+//Immortality ring
+/obj/item/clothing/gloves/ring/immortality_ring
+ name = "старое кольцо"
+ icon_state = "shadowring"
+ ring_color = "shadow"
+ material = "shadow"
+ desc = "Кольцо цвета оникса из неизвестного материала. Позолоченные надписи на внешней стороне причудливо пульсируют, испуская зловещую дымку. Надеть его кажется не лучшей идеей..."
+ resistance_flags = INDESTRUCTIBLE | FIRE_PROOF | UNACIDABLE | ACID_PROOF
+ actions_types = list(/datum/action/item_action/immortality)
+ var/ability_delay = 100 SECONDS
+ var/invisibility_add = 101
+ var/invisibility_rmv = 0
+
+/datum/action/item_action/immortality
+ name = "Ring ability"
+
+/obj/item/clothing/gloves/ring/immortality_ring/proc/ring_ability(mob/user)
+ if(cooldown > world.time)
+ to_chat(user, span_warning("[name] еще перезаряжается!"))
+ return
+ cooldown = world.time + ability_delay
+ user.status_flags |= GODMODE
+ user.invisibility = invisibility_add
+ visible_message(span_danger("[user] исчезает из реальности!"))
+ to_chat(user, span_cultitalic("Ты чувствуешь чье-то ужасающее присутствие..."))
+ SEND_SOUND (user, sound('sound/hallucinations/i_see_you2.ogg'))
+ addtimer(CALLBACK(src, PROC_REF(ring_ability_end), user), 8 SECONDS)
+
+/obj/item/clothing/gloves/ring/immortality_ring/proc/ring_ability_end(mob/user)
+ user.status_flags &= ~GODMODE
+ user.invisibility = invisibility_rmv
+ visible_message(span_danger("[user] возвращается в реальность!"))
+ if(!ishuman(user))
+ return
+ var/mob/living/carbon/human/H = user
+ H.apply_damage(rand(10, 40), BURN, pick("r_hand"))
+ H.adjustCloneLoss(25, TRUE)
+ H.adjustBrainLoss(30, TRUE)
+
+/obj/item/clothing/gloves/ring/immortality_ring/ui_action_click(mob/user, immortality)
+ ring_ability(user)
+
+/obj/item/clothing/gloves/ring/immortality_ring/item_action_slot_check(slot, mob/user, immortality)
+ if(slot == SLOT_HUD_GLOVES)
+ return TRUE
+
+/obj/item/clothing/gloves/ring/immortality_ring/equipped(mob/user, slot)
+ ..()
+ var/mob/living/carbon/human/H = user
+ if(istype(H) && slot == SLOT_HUD_GLOVES)
+ flags = NODROP
+ to_chat(user, span_danger("[name] туго обвивается вокруг твоего пальца!"))
+ SEND_SOUND (user, sound('modular_ss220/aesthetics_sounds/sound/creepy/demon2.ogg'))
+
diff --git a/modular_ss220/maps220/code/walls.dm b/modular_ss220/maps220/code/walls.dm
index d94e857cb59e..f18e59018d29 100644
--- a/modular_ss220/maps220/code/walls.dm
+++ b/modular_ss220/maps220/code/walls.dm
@@ -5,7 +5,7 @@
icon = 'icons/turf/walls//smoothrocks.dmi'
icon_state = "smoothrocks-0"
base_icon_state = "smoothrocks"
- color = COLOR_ANCIENT_ROCK
+ color = COLOR_ROCK
smoothing_flags = SMOOTH_BITMASK | SMOOTH_BORDER
smoothing_groups = list(SMOOTH_GROUP_SIMULATED_TURFS, SMOOTH_GROUP_MINERAL_WALLS)
canSmoothWith = list(SMOOTH_GROUP_MINERAL_WALLS)
diff --git a/modular_ss220/maps220/icons/clown_mobs.dmi b/modular_ss220/maps220/icons/clown_mobs.dmi
new file mode 100644
index 000000000000..d962055a966c
Binary files /dev/null and b/modular_ss220/maps220/icons/clown_mobs.dmi differ
diff --git a/modular_ss220/maps220/icons/crates.dmi b/modular_ss220/maps220/icons/crates.dmi
index eb989c03ebd2..2c3cbcdfae54 100644
Binary files a/modular_ss220/maps220/icons/crates.dmi and b/modular_ss220/maps220/icons/crates.dmi differ
diff --git a/modular_ss220/maps220/icons/misc_objects.dmi b/modular_ss220/maps220/icons/misc_objects.dmi
new file mode 100644
index 000000000000..ae09e6a2602b
Binary files /dev/null and b/modular_ss220/maps220/icons/misc_objects.dmi differ
diff --git a/modular_ss220/maps220/icons/simple_human.dmi b/modular_ss220/maps220/icons/simple_human.dmi
index ac372c026f54..58f736075ab9 100644
Binary files a/modular_ss220/maps220/icons/simple_human.dmi and b/modular_ss220/maps220/icons/simple_human.dmi differ
diff --git a/modular_ss220/maps220/icons/syndie_logo.dmi b/modular_ss220/maps220/icons/syndie_logo.dmi
index f5b782bc445c..dd7c1eff1015 100644
Binary files a/modular_ss220/maps220/icons/syndie_logo.dmi and b/modular_ss220/maps220/icons/syndie_logo.dmi differ
diff --git a/modular_ss220/mobs/code/mob_holder.dm b/modular_ss220/mobs/code/mob_holder.dm
index 8602899f205b..af15df85d8aa 100644
--- a/modular_ss220/mobs/code/mob_holder.dm
+++ b/modular_ss220/mobs/code/mob_holder.dm
@@ -52,6 +52,7 @@
icon_state = "nymph"
origin_tech = "biotech=5"
slot_flags = SLOT_FLAG_HEAD|SLOT_FLAG_EARS
+ icon = 'icons/mob/animal.dmi'
/obj/item/holder/pai
name = "pAI"
@@ -243,12 +244,13 @@
/obj/item/holder/snake
name = "pet"
desc = "It's a pet"
+ icon = 'icons/mob/animal.dmi'
icon_state = "snake"
/obj/item/holder/parrot
name = "pet"
desc = "It's a pet"
- icon = 'modular_ss220/mobs/icons/mob/animal.dmi'
+ icon = 'icons/mob/animal.dmi'
icon_state = "parrot_fly"
/obj/item/holder/axolotl
diff --git a/modular_ss220/mobs/code/simple_animal/friendly/frog.dm b/modular_ss220/mobs/code/simple_animal/friendly/frog.dm
index 5f0fc7aa4c52..286c17c7e631 100644
--- a/modular_ss220/mobs/code/simple_animal/friendly/frog.dm
+++ b/modular_ss220/mobs/code/simple_animal/friendly/frog.dm
@@ -122,25 +122,25 @@
custom_emote(1,"издаёт боевой клич!")
playsound(src, pick(src.scream_sound), 50, TRUE)
-/mob/living/simple_animal/frog/emote(act, m_type = 1, message = null, intentional, force)
+/mob/living/simple_animal/frog/emote(emote_key, type_override = 1, message, intentional, force_silence)
if(incapacitated())
return
var/on_CD = 0
- act = lowertext(act)
- switch(act)
+ emote_key = lowertext(emote_key)
+ switch(emote_key)
if("warcry")
on_CD = start_audio_emote_cooldown()
else
on_CD = 0
- if(!force && on_CD == 1)
+ if(!force_silence && on_CD == 1)
return
- switch(act)
+ switch(emote_key)
if("warcry")
message = "издаёт боевой клич!"
- m_type = 2 //audible
+ type_override = 2 //audible
playsound(src, pick(src.scream_sound), 50, TRUE)
if("help")
to_chat(src, "warcry")
diff --git a/modular_ss220/mobs/code/simple_animal/friendly/rat.dm b/modular_ss220/mobs/code/simple_animal/friendly/rat.dm
index 40b37f87c136..0686f46b8af3 100644
--- a/modular_ss220/mobs/code/simple_animal/friendly/rat.dm
+++ b/modular_ss220/mobs/code/simple_animal/friendly/rat.dm
@@ -38,10 +38,10 @@
/mob/living/simple_animal/mouse/rat/color_pick()
if(!mouse_color)
mouse_color = pick(list("gray","white","irish"))
- icon_state = "rat_[mouse_color]"
- icon_living = "rat_[mouse_color]"
- icon_dead = "rat_[mouse_color]_dead"
- icon_resting = "rat_[mouse_color]_sleep"
+ icon_state = "rat_[mouse_color]"
+ icon_living = "rat_[mouse_color]"
+ icon_dead = "rat_[mouse_color]_dead"
+ icon_resting = "rat_[mouse_color]_sleep"
/mob/living/simple_animal/mouse/rat/pull_constraint(atom/movable/AM, show_message = FALSE)
return TRUE
diff --git a/modular_ss220/mobs/code/simple_animal/hostile/syndi_rat.dm b/modular_ss220/mobs/code/simple_animal/hostile/syndi_rat.dm
index f7f42612a359..e8006fc287e5 100644
--- a/modular_ss220/mobs/code/simple_animal/hostile/syndi_rat.dm
+++ b/modular_ss220/mobs/code/simple_animal/hostile/syndi_rat.dm
@@ -92,25 +92,25 @@
to_chat(M, "[bicon(src)] Squeek! ")
..()
-/mob/living/simple_animal/hostile/retaliate/syndirat/emote(act, m_type = 1, message = null, intentional, force)
+/mob/living/simple_animal/hostile/retaliate/syndirat/emote(emote_key, type_override = 1, message, intentional, force_silence)
if(stat != CONSCIOUS)
return
var/on_CD = 0
- act = lowertext(act)
- switch(act)
+ emote_key = lowertext(emote_key)
+ switch(emote_key)
if("squeak") //Mouse time
on_CD = start_audio_emote_cooldown()
else
on_CD = 0
- if(!force && on_CD == 1)
+ if(!force_silence && on_CD == 1)
return
- switch(act)
+ switch(emote_key)
if("squeak")
message = "[pick(emote_hear)]!"
- m_type = 2 //audible
+ type_override = 2 //audible
playsound(src, squeak_sound, 40, 1)
if("help")
to_chat(src, "scream, squeak")
diff --git a/modular_ss220/mobs/code/simple_animal/named_animals.dm b/modular_ss220/mobs/code/simple_animal/named_animals.dm
index 3a895b8816af..a1b25d209a49 100644
--- a/modular_ss220/mobs/code/simple_animal/named_animals.dm
+++ b/modular_ss220/mobs/code/simple_animal/named_animals.dm
@@ -78,6 +78,7 @@
name = "Рататуй"
real_name = "Рататуй"
desc = "Личная крыса шеф повара, помогающая ему при готовке наиболее изысканных блюд. До момента пока он не пропадет и повар не начнет готовить что-то новенькое..."
+ mouse_color = "gray"
unique_pet = TRUE
gold_core_spawnable = NO_SPAWN
maxHealth = 20
diff --git a/modular_ss220/mobs/code/simple_animal/overrides.dm b/modular_ss220/mobs/code/simple_animal/overrides.dm
index 09f35d7bcce4..8f739a789282 100644
--- a/modular_ss220/mobs/code/simple_animal/overrides.dm
+++ b/modular_ss220/mobs/code/simple_animal/overrides.dm
@@ -6,7 +6,7 @@
attack_sound = null
friendly = "утыкается в" //If the mob does no damage with it's attack
- tts_seed = "Kleiner"
+ tts_seed = "Angel"
var/list/damaged_sound = null // The sound played when player hits animal
var/list/talk_sound = null // The sound played when talk
diff --git a/modular_ss220/mobs/code/simple_animal/pets/rouge.dm b/modular_ss220/mobs/code/simple_animal/pets/rouge.dm
index 3d24b2c219fb..9aa6910fa0a0 100644
--- a/modular_ss220/mobs/code/simple_animal/pets/rouge.dm
+++ b/modular_ss220/mobs/code/simple_animal/pets/rouge.dm
@@ -39,15 +39,15 @@
visible_message("[src] [pick("dances around", "chases [p_their()] tail")].", "[pick("You dance around", "You chase your tail")].")
spin(20, 1)
-/mob/living/simple_animal/hostile/retaliate/poison/snake/rouge/emote(act, m_type = 1, message = null, intentional, force)
+/mob/living/simple_animal/hostile/retaliate/poison/snake/rouge/emote(emote_key, type_override = 1, message, intentional, force_silence)
if(incapacitated())
return
- act = lowertext(act)
- if(!force && act == "hiss" && start_audio_emote_cooldown())
+ emote_key = lowertext(emote_key)
+ if(!force_silence && emote_key == "hiss" && start_audio_emote_cooldown())
return
- switch(act)
+ switch(emote_key)
if("hiss")
message = "[src] [pick(src.speak_emote)]!"
..()
diff --git a/modular_ss220/mobs/icons/mob/pets.dmi b/modular_ss220/mobs/icons/mob/pets.dmi
index 658e677ded5a..fa2fabc90e57 100644
Binary files a/modular_ss220/mobs/icons/mob/pets.dmi and b/modular_ss220/mobs/icons/mob/pets.dmi differ
diff --git a/modular_ss220/mobs/tests/animal.dmi b/modular_ss220/mobs/tests/animal.dmi
deleted file mode 100644
index 78de6fd28b2a..000000000000
Binary files a/modular_ss220/mobs/tests/animal.dmi and /dev/null differ
diff --git a/modular_ss220/mobs/tests/animal_test.dmi b/modular_ss220/mobs/tests/animal_test.dmi
deleted file mode 100644
index 6853c25994d1..000000000000
Binary files a/modular_ss220/mobs/tests/animal_test.dmi and /dev/null differ
diff --git a/modular_ss220/mobs/tests/pets.dmi b/modular_ss220/mobs/tests/pets.dmi
deleted file mode 100644
index 11c449b23252..000000000000
Binary files a/modular_ss220/mobs/tests/pets.dmi and /dev/null differ
diff --git a/modular_ss220/mobs/tests/pets_test.dmi b/modular_ss220/mobs/tests/pets_test.dmi
deleted file mode 100644
index 5018766ad374..000000000000
Binary files a/modular_ss220/mobs/tests/pets_test.dmi and /dev/null differ
diff --git a/modular_ss220/modular_ss220.dme b/modular_ss220/modular_ss220.dme
index 3e3f4c5a8fae..83f04b970dc9 100644
--- a/modular_ss220/modular_ss220.dme
+++ b/modular_ss220/modular_ss220.dme
@@ -31,12 +31,16 @@
#include "unique_objects/_unique_objects.dme"
#include "vending/vending.dme"
#include "wire_splicing/wiresplicing.dme"
+#include "silicons/_silicons.dme"
+#include "silicon_hats/_silicon_hats.dme"
// --- MISC --- //
#include "administration/_administration.dme"
#include "aesthetics_sounds/_aesthetics_sounds.dme"
+#include "agent_id_tgui/_agent_id_tgui.dme"
#include "balance/_balance.dme"
#include "bureaucracy/_bureaucracy.dme"
+#include "camera_nanomap/camera.dme"
#include "cinematics/_cinematics.dme"
#include "closet_picklocking/_closet_picklocking.dme"
#include "crawl_speed/_crawl_speed.dme"
@@ -64,6 +68,7 @@
#include "title_screen/_title_screen.dme"
#include "whitelist/_whitelist.dme"
#include "outfits/_outfits.dme"
+#include "world_view_bigger/_world_view_bigger.dme"
// --- PRIME --- //
// #define MODPACK_MAIN_ONLY
diff --git a/modular_ss220/objects/code/weapons.dm b/modular_ss220/objects/code/weapons.dm
index d5f1c64633d1..b7f83ad946cc 100644
--- a/modular_ss220/objects/code/weapons.dm
+++ b/modular_ss220/objects/code/weapons.dm
@@ -1,6 +1,36 @@
+// Base heavy revolver
+/obj/item/gun/projectile/revolver/reclinable
+ var/snapback_sound = 'modular_ss220/objects/sound/weapons/cylinder/snapback_rsh12.ogg'
+ var/reclined_sound = 'modular_ss220/objects/sound/weapons/cylinder/reclined_rsh12.ogg'
+ var/dry_fire_sound = 'sound/weapons/empty.ogg'
+ var/reclined = FALSE
+
+/obj/item/gun/projectile/revolver/reclinable/attack_self(mob/living/user)
+ reclined = !reclined
+ playsound(user, reclined ? reclined_sound : snapback_sound, 50, 1)
+ update_icon()
+
+ if(reclined)
+ return ..()
+
+/obj/item/gun/projectile/revolver/reclinable/update_icon_state()
+ icon_state = initial(icon_state) + (reclined ? "_reclined" : "")
+
+/obj/item/gun/projectile/revolver/reclinable/attackby(obj/item/A, mob/user, params)
+ if(!reclined)
+ return
+ return ..()
+
+/obj/item/gun/projectile/revolver/reclinable/process_fire(atom/target, mob/living/user, message, params, zone_override, bonus_spread)
+ if (!reclined)
+ return ..()
+
+ to_chat(user, "*click* ")
+ playsound(user, dry_fire_sound, 100, 1)
+
// Colt Anaconda .44
-/obj/item/gun/projectile/revolver/anaconda
+/obj/item/gun/projectile/revolver/reclinable/anaconda
name = "Анаконда"
desc = "Крупнокалиберный револьвер двадцатого века. Несмотря на то, что оружие хранилось в хороших условиях, старина даёт о себе знать."
mag_type = /obj/item/ammo_box/magazine/internal/cylinder/d44
@@ -9,16 +39,13 @@
icon = 'modular_ss220/objects/icons/guns.dmi'
icon_state = "anaconda"
item_state = "anaconda"
+ fire_sound = 'modular_ss220/objects/sound/weapons/gunshots/gunshot_anaconda.ogg'
-/obj/item/gun/projectile/revolver/anaconda/attackby(obj/item/A, mob/user, params)
+/obj/item/gun/projectile/revolver/reclinable/anaconda/attackby(obj/item/A, mob/user, params)
if(istype(A, /obj/item/ammo_box/box_d44))
return
return ..()
-/obj/item/gun/projectile/revolver/anaconda/process_fire(atom/target, mob/living/user, message, params, zone_override, bonus_spread)
- bonus_spread += 30
- . = ..()
-
/obj/item/ammo_box/magazine/internal/cylinder/d44
name = ".44 revolver cylinder"
ammo_type = /obj/item/ammo_casing/d44
@@ -42,6 +69,7 @@
flag = "bullet"
hitsound_wall = "ricochet"
impact_effect_type = /obj/effect/temp_visual/impact_effect
+ spread = 20
/obj/item/ammo_box/speed_loader_d44
name = "speed loader (.44)"
@@ -63,14 +91,14 @@
/obj/structure/displaycase/hos
alert = TRUE
- start_showpiece_type = /obj/item/gun/projectile/revolver/anaconda
+ start_showpiece_type = /obj/item/gun/projectile/revolver/reclinable/anaconda
req_access = list(ACCESS_HOS)
// RSH-12 12.7
-/obj/item/gun/projectile/revolver/rsh12
+/obj/item/gun/projectile/revolver/reclinable/rsh12
name = "РШ-12"
- desc = "Тяжёлый револьвер винтовочного калибра с, откидным вниз для более удобного заряжания, стволом. По слухам, всё ещё находится на вооружении у СССП."
+ desc = "Тяжёлый револьвер винтовочного калибра с откидным стволом. По слухам, всё ещё находится на вооружении у СССП."
mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rsh12
lefthand_file = 'modular_ss220/objects/icons/guns_lefthand.dmi'
righthand_file = 'modular_ss220/objects/icons/guns_righthand.dmi'
@@ -78,22 +106,10 @@
icon_state = "rsh12"
item_state = "rsh12"
fire_sound = 'modular_ss220/objects/sound/weapons/gunshots/gunshot_rsh12.ogg'
- var/reclined = FALSE
-
-/obj/item/gun/projectile/revolver/rsh12/attack_self(mob/living/user)
- reclined = !reclined
- update_icon()
- if(reclined)
- return ..()
-/obj/item/gun/projectile/revolver/rsh12/update_icon_state()
- icon_state = initial(icon_state) + (reclined ? "_reclined" : "")
-
-/obj/item/gun/projectile/revolver/rsh12/attackby(obj/item/A, mob/user, params)
+/obj/item/gun/projectile/revolver/reclinable/rsh12/attackby(obj/item/A, mob/user, params)
if(istype(A, /obj/item/ammo_box/box_mm127))
return
- if(!reclined)
- return
return ..()
/obj/item/ammo_box/magazine/internal/cylinder/rsh12
diff --git a/modular_ss220/objects/icons/guns.dmi b/modular_ss220/objects/icons/guns.dmi
index 3d64d40c0389..10eebc3d9b5e 100644
Binary files a/modular_ss220/objects/icons/guns.dmi and b/modular_ss220/objects/icons/guns.dmi differ
diff --git a/modular_ss220/objects/sound/weapons/cylinder/reclined_rsh12.ogg b/modular_ss220/objects/sound/weapons/cylinder/reclined_rsh12.ogg
new file mode 100644
index 000000000000..698b798cdc74
Binary files /dev/null and b/modular_ss220/objects/sound/weapons/cylinder/reclined_rsh12.ogg differ
diff --git a/modular_ss220/objects/sound/weapons/cylinder/snapback_rsh12.ogg b/modular_ss220/objects/sound/weapons/cylinder/snapback_rsh12.ogg
new file mode 100644
index 000000000000..8a5a76170a84
Binary files /dev/null and b/modular_ss220/objects/sound/weapons/cylinder/snapback_rsh12.ogg differ
diff --git a/modular_ss220/objects/sound/weapons/gunshots/gunshot_anaconda.ogg b/modular_ss220/objects/sound/weapons/gunshots/gunshot_anaconda.ogg
new file mode 100644
index 000000000000..bca062190f94
Binary files /dev/null and b/modular_ss220/objects/sound/weapons/gunshots/gunshot_anaconda.ogg differ
diff --git a/modular_ss220/outfits/code/outfits.dm b/modular_ss220/outfits/code/outfits.dm
index b70cf4ed4d0f..b35fc68b6dd6 100644
--- a/modular_ss220/outfits/code/outfits.dm
+++ b/modular_ss220/outfits/code/outfits.dm
@@ -50,14 +50,14 @@
backpack_contents = list(
/obj/item/storage/box/soviet = 1,
- /obj/item/gun/projectile/revolver/anaconda = 1,
+ /obj/item/gun/projectile/revolver/reclinable/anaconda = 1,
/obj/item/ammo_box/speed_loader_d44 = 2,
/obj/item/storage/fancy/cigarettes/cigpack_syndicate = 1,
/obj/item/lighter/zippo/engraved = 1
)
/datum/outfit/admin/soviet/officer
- belt = /obj/item/gun/projectile/revolver/rsh12
+ belt = /obj/item/gun/projectile/revolver/reclinable/rsh12
backpack_contents = list(
/obj/item/storage/box/soviet = 1,
@@ -67,7 +67,7 @@
)
/datum/outfit/admin/soviet/admiral
- belt = /obj/item/gun/projectile/revolver/rsh12
+ belt = /obj/item/gun/projectile/revolver/reclinable/rsh12
backpack_contents = list(
/obj/item/storage/box/soviet = 1,
diff --git a/modular_ss220/silicon_hats/_silicon_hats.dm b/modular_ss220/silicon_hats/_silicon_hats.dm
new file mode 100644
index 000000000000..96493c8ca55f
--- /dev/null
+++ b/modular_ss220/silicon_hats/_silicon_hats.dm
@@ -0,0 +1,4 @@
+/datum/modpack/silicon_hats
+ name = "Silicon Hats"
+ desc = "На силиконов можно надеть шапочки."
+ author = "PhantomRU"
diff --git a/modular_ss220/silicon_hats/_silicon_hats.dme b/modular_ss220/silicon_hats/_silicon_hats.dme
new file mode 100644
index 000000000000..a858c11dcfbe
--- /dev/null
+++ b/modular_ss220/silicon_hats/_silicon_hats.dme
@@ -0,0 +1,4 @@
+#include "_silicon_hats.dm"
+
+#include "code/silicon_hats.dm"
+#include "code/silicon_interactions.dm"
diff --git a/modular_ss220/silicon_hats/code/silicon_hats.dm b/modular_ss220/silicon_hats/code/silicon_hats.dm
new file mode 100644
index 000000000000..a1c501300f31
--- /dev/null
+++ b/modular_ss220/silicon_hats/code/silicon_hats.dm
@@ -0,0 +1,218 @@
+/mob/living/silicon
+ var/obj/item/inventory_head
+
+ var/hat_offset_y = -3
+ var/is_centered = FALSE // центрирован ли синтетик. Если нет, то шляпа будет растянута
+
+ var/list/blacklisted_hats = list( // Запрещенные шляпы на ношение для боргов с большими головами
+ /obj/item/clothing/head/helmet,
+ /obj/item/clothing/head/welding,
+ /obj/item/clothing/head/snowman,
+ /obj/item/clothing/head/bio_hood,
+ /obj/item/clothing/head/bomb_hood,
+ /obj/item/clothing/head/blob,
+ /obj/item/clothing/head/chicken,
+ /obj/item/clothing/head/corgi,
+ /obj/item/clothing/head/cueball,
+ /obj/item/clothing/head/hardhat/pumpkinhead,
+ /obj/item/clothing/head/radiation,
+ /obj/item/clothing/head/papersack,
+ /obj/item/clothing/head/human_head,
+ /obj/item/clothing/head/kitty,
+ /obj/item/clothing/head/hardhat/reindeer,
+ /obj/item/clothing/head/cardborg,
+ )
+
+ var/hat_icon_file = 'icons/mob/clothing/head.dmi'
+ var/hat_icon_state
+ var/hat_alpha
+ var/hat_color
+
+ var/can_be_hatted = FALSE
+ var/can_wear_blacklisted_hats = FALSE
+
+/mob/living/silicon/robot/drone
+ hat_offset_y = -15
+ is_centered = TRUE
+ can_be_hatted = TRUE
+ can_wear_blacklisted_hats = TRUE
+
+/mob/living/silicon/ai
+ hat_offset_y = 3
+ is_centered = TRUE
+ can_be_hatted = TRUE
+
+/mob/living/silicon/robot/proc/robot_module_hat_offset(module)
+ switch(module)
+ // хуманоидные броботы с шляпами
+ if("Engineering", "Miner_old", "JanBot2", "Medbot", "engineerrobot", "maximillion", "secborg", "Hydrobot")
+ can_be_hatted = FALSE
+ hat_offset_y = -1
+ if("Noble-CLN", "Noble-SRV", "Noble-DIG", "Noble-MED", "Noble-SEC", "Noble-ENG", "Noble-STD") //Высотой: 32 пикселя
+ can_be_hatted = TRUE
+ can_wear_blacklisted_hats = TRUE
+ hat_offset_y = 4
+ if("droid-medical") // Высотой: 32 пикселя
+ can_be_hatted = TRUE
+ can_wear_blacklisted_hats = TRUE
+ hat_offset_y = 4
+ if("droid-miner", "mk2", "mk3") // Высотой: 32 большая голова, шарообразные
+ can_be_hatted = TRUE
+ is_centered = TRUE
+ hat_offset_y = 3
+ if("bloodhound", "nano_bloodhound", "syndie_bloodhound", "ertgamma")//Высотой: 31
+ can_be_hatted = TRUE
+ hat_offset_y = 1
+ if("Cricket-SEC", "Cricket-MEDI", "Cricket-JANI", "Cricket-ENGI", "Cricket-MINE", "Cricket-SERV") //Высотой: 31
+ can_be_hatted = TRUE
+ hat_offset_y = 2
+ if("droidcombat-shield", "droidcombat") // Высотой: 31
+ can_be_hatted = TRUE
+ hat_alpha = 255
+ hat_offset_y = 2
+ if("droidcombat-roll")
+ can_be_hatted = TRUE
+ hat_alpha = 0
+ hat_offset_y = 2
+ if("syndi-medi", "surgeon", "toiletbot") // Высотой: 30
+ can_be_hatted = TRUE
+ is_centered = TRUE
+ hat_offset_y = 1
+ if("Security", "janitorrobot", "medicalrobot") // Высотой: 29
+ can_be_hatted = TRUE
+ is_centered = TRUE
+ can_wear_blacklisted_hats = TRUE
+ hat_offset_y = -1
+ if("Brobot", "Service", "robot+o+c", "robot_old", "securityrobot", //Высотой: 28
+ "rowtree-engineering", "rowtree-lucy", "rowtree-medical", "rowtree-security") //Бабоботы
+ can_be_hatted = TRUE
+ is_centered = TRUE
+ can_wear_blacklisted_hats = TRUE
+ hat_offset_y = -1
+ if("Miner", "lavaland") // Высотой: 27
+ can_be_hatted = TRUE
+ hat_offset_y = -1
+ if("robot", "Standard", "Standard-Secy", "Standard-Medi", "Standard-Engi",
+ "Standard-Jani", "Standard-Serv", "Standard-Mine", "xenoborg-state-a") //Высотой: 26
+ can_be_hatted = TRUE
+ hat_offset_y = -3
+ if("droid") // Высотой: 25
+ can_be_hatted = TRUE
+ is_centered = TRUE
+ can_wear_blacklisted_hats = TRUE
+ hat_offset_y = -3
+ if("landmate", "syndi-engi") // Высотой: 24 пикселя макушка
+ can_be_hatted = TRUE
+ hat_offset_y = -3
+ if("mopgearrex") // Высотой: 22
+ can_be_hatted = TRUE
+ hat_offset_y = -6
+
+ if(inventory_head)
+ if (!can_be_hatted)
+ remove_from_head(usr)
+ return
+ if (!can_wear_blacklisted_hats && is_type_in_list(inventory_head, blacklisted_hats))
+ remove_from_head(usr)
+ return
+
+/mob/living/silicon/proc/hat_icons()
+ if(inventory_head)
+ overlays += get_hat_overlay()
+
+/mob/living/silicon/regenerate_icons()
+ overlays.Cut()
+ ..()
+
+ if(inventory_head)
+ var/image/head_icon
+
+ if(inventory_head.icon_override) // Для модульных шапок
+ hat_icon_file = inventory_head.icon_override
+ if(!hat_icon_state)
+ hat_icon_state = inventory_head.icon_state
+ if(!hat_alpha)
+ hat_alpha = inventory_head.alpha
+ if(!hat_color)
+ hat_color = inventory_head.color
+
+ head_icon = get_hat_overlay()
+
+ add_overlay(head_icon)
+
+/mob/living/silicon/proc/get_hat_overlay()
+ if(hat_icon_file && hat_icon_state)
+ var/image/borgI = image(hat_icon_file, hat_icon_state)
+ borgI.alpha = hat_alpha
+ borgI.color = hat_color
+ borgI.pixel_y = hat_offset_y
+ if (!is_centered)
+ borgI.transform = matrix(1.125, 0, 0.5, 0, 1, 0)
+ return borgI
+
+/mob/living/silicon/proc/place_on_head(obj/item/item_to_add, mob/user)
+ if(!item_to_add)
+ user.visible_message(span_notice("[user] похлопывает по голове [src]."), span_notice("Вы положили руку на голову [src]."))
+ if(flags_2 & HOLOGRAM_2)
+ return FALSE
+ return FALSE
+
+ if(!istype(item_to_add, /obj/item/clothing/head/))
+ to_chat(user, span_warning("[item_to_add] нельзя надеть на голову [src]!"))
+ return FALSE
+
+ if(!can_be_hatted)
+ to_chat(user, span_warning("[item_to_add] нельзя надеть на голову [src]! Похоже у него уже есть встроенная шляпа."))
+ return FALSE
+
+ if(inventory_head)
+ if(user)
+ to_chat(user, span_warning("Нельзя надеть больше одного головного убора на голову [src]!"))
+ return FALSE
+
+ if(user && !user.unEquip(item_to_add))
+ to_chat(user, span_warning("[item_to_add] застрял в ваших руках, вы не можете его надеть на голову [src]!"))
+ return FALSE
+
+ if (!can_wear_blacklisted_hats && is_type_in_list(item_to_add, blacklisted_hats))
+ to_chat(user, span_warning("[item_to_add] не помещается на голову [src]!"))
+ return FALSE
+
+ user.visible_message(span_notice("[user] надевает [item_to_add] на голову [real_name]."),
+ span_notice("Вы надеваете [item_to_add] на голову [real_name]."),
+ span_italics("Вы слышите как что-то нацепили."))
+ item_to_add.forceMove(src)
+ inventory_head = item_to_add
+ regenerate_icons()
+
+ return TRUE
+
+/mob/living/silicon/proc/remove_from_head(mob/user)
+ if(inventory_head)
+ if(inventory_head.flags & NODROP)
+ to_chat(user, span_warning("[inventory_head.name] застрял на головном корпусе [src]! Его невозможно снять!"))
+ return TRUE
+
+ to_chat(user, span_warning("Вы сняли [inventory_head.name] с головного корпуса [src]."))
+ user.put_in_hands(inventory_head)
+
+ null_hat()
+
+ regenerate_icons()
+ else
+ to_chat(user, span_warning("На головном корпусе [src] нет головного убора!"))
+ return FALSE
+
+ return TRUE
+
+/mob/living/silicon/proc/drop_hat()
+ if(inventory_head)
+ unEquip(inventory_head)
+ null_hat()
+ regenerate_icons()
+
+/mob/living/silicon/proc/null_hat()
+ inventory_head = null
+ hat_icon_state = null
+ hat_alpha = null
+ hat_color = null
diff --git a/modular_ss220/silicon_hats/code/silicon_interactions.dm b/modular_ss220/silicon_hats/code/silicon_interactions.dm
new file mode 100644
index 000000000000..7aefa091aa50
--- /dev/null
+++ b/modular_ss220/silicon_hats/code/silicon_interactions.dm
@@ -0,0 +1,101 @@
+/mob/living/silicon/robot/update_icons()
+ . = ..()
+ hat_icons()
+
+/mob/living/silicon/robot/drone/update_icons()
+ . = ..()
+ hat_icons()
+
+/mob/living/silicon/death(gibbed)
+ if(gibbed)
+ drop_hat()
+ . = ..()
+
+/mob/living/silicon/robot/deconstruct()
+ drop_hat()
+ . = ..()
+
+/mob/living/silicon/robot/get_module_sprites(selected_module)
+ . = ..()
+ robot_module_hat_offset(icon_state)
+
+/mob/living/silicon/grabbedby(mob/living/user)
+ remove_from_head(user)
+
+// Если вдруг кто-то захочет сразу спавнить боргов с шапками
+/mob/living/silicon/Initialize(mapload)
+ . = ..()
+ regenerate_icons()
+
+// Для уже готовых спавнов боевых боргов
+/mob/living/silicon/robot/Initialize(mapload)
+ . = ..()
+ robot_module_hat_offset(icon_state)
+
+/mob/living/silicon/robot/initialize_module(selected_module, selected_sprite, list/module_sprites)
+ . = ..()
+ robot_module_hat_offset(icon_state)
+
+/datum/emote/flip/run_emote(mob/user, params, type_override, intentional)
+ . = ..()
+ if(isrobot(user))
+ var/mob/living/silicon/robot/borg = user
+ message = "кувырком опрокинул шляпу!"
+ borg.drop_hat()
+
+/mob/living/silicon/attackby(obj/item/W, mob/user, params)
+ if(istype(W, /obj/item/clothing/head) && user.a_intent == INTENT_HELP)
+ place_on_head(user.get_active_hand(), user)
+ return TRUE
+ . = ..()
+
+/mob/living/silicon/Topic(href, href_list)
+ if(..())
+ return TRUE
+
+ if(!(iscarbon(usr) || usr.incapacitated() || !Adjacent(usr)))
+ usr << browse(null, "window=mob[UID()]")
+ usr.unset_machine()
+ return FALSE
+
+ if (!can_be_hatted)
+ return FALSE
+
+ if(href_list["remove_inv"])
+ var/remove_from = href_list["remove_inv"]
+ switch(remove_from)
+ if("head")
+ remove_from_head(usr)
+ show_inv(usr)
+
+ else if(href_list["add_inv"])
+ var/add_to = href_list["add_inv"]
+ switch(add_to)
+ if("head")
+ place_on_head(usr.get_active_hand(), usr)
+ show_inv(usr)
+
+ if(usr != src)
+ return TRUE
+
+/mob/living/silicon/show_inv(mob/user)
+ if(user.incapacitated() || !Adjacent(user))
+ return FALSE
+ user.set_machine(src)
+
+ var/dat = {"Inventory of [name]
"}
+ dat += "Head: [inventory_head]" : "add_inv=head'>Nothing"] "
+
+ var/datum/browser/popup = new(user, "mob\ref[src]", "[src]", 440, 500)
+ popup.set_content(dat)
+ popup.open()
+
+/mob/living/silicon/robot/examine(mob/user)
+ . = ..()
+ if(inventory_head)
+ . += "\nНосит [bicon(inventory_head)] [inventory_head.name].\n"
+
+/mob/living/silicon/ai/examine(mob/user)
+ . = ..()
+ if(inventory_head)
+ . += "\nНа корпусе расположился [bicon(inventory_head)] [inventory_head.name].\n"
diff --git a/modular_ss220/silicons/_silicons.dm b/modular_ss220/silicons/_silicons.dm
new file mode 100644
index 000000000000..1a7edaf2bfb5
--- /dev/null
+++ b/modular_ss220/silicons/_silicons.dm
@@ -0,0 +1,4 @@
+/datum/modpack/silicons
+ name = "Silicons Modpack"
+ desc = "Изменения для синтетиков."
+ author = "PhantomRU"
diff --git a/modular_ss220/silicons/_silicons.dme b/modular_ss220/silicons/_silicons.dme
new file mode 100644
index 000000000000..ed0d8dfee58c
--- /dev/null
+++ b/modular_ss220/silicons/_silicons.dme
@@ -0,0 +1,3 @@
+#include "_silicons.dm"
+
+#include "code/robot_modules.dm"
diff --git a/modular_ss220/silicons/code/robot_modules.dm b/modular_ss220/silicons/code/robot_modules.dm
new file mode 100644
index 000000000000..8f89068a5c98
--- /dev/null
+++ b/modular_ss220/silicons/code/robot_modules.dm
@@ -0,0 +1,57 @@
+/obj/item/robot_module/drone/Initialize(mapload)
+ . = ..()
+ basic_modules |= list(
+ /obj/item/holosign_creator/atmos,
+ )
+
+/obj/item/robot_module/engineering/Initialize(mapload)
+ . = ..()
+ basic_modules |= list(
+ /obj/item/inflatable/cyborg,
+ /obj/item/inflatable/cyborg/door,
+ )
+
+
+// надувные стены
+/obj/item/inflatable/cyborg
+ name = "надувная стена"
+ desc = "Сложенная надувная стена, которая при активации быстро расширяется до большой кубической мембраны."
+ var/power_use = 400
+ var/structure_type = /obj/structure/inflatable
+
+/obj/item/inflatable/cyborg/door
+ name = "надувной шлюз"
+ desc = "Сложенный надувной шлюз, который при активации быстро расширяется в простую дверь."
+ icon_state = "folded_door"
+ power_use = 600
+ structure_type = /obj/structure/inflatable/door
+
+/obj/item/inflatable/cyborg/examine(mob/user)
+ . = ..()
+ . += span_notice("Как синтетик, вы можете восстановить их в cyborg recharger ")
+
+/obj/item/inflatable/cyborg/attack_self(mob/user)
+ if(locate(/obj/structure/inflatable) in get_turf(user))
+ to_chat(user, span_warning("Здесь уже есть надувная стена!"))
+ return FALSE
+
+ playsound(loc, 'sound/items/zip.ogg', 75, 1)
+ to_chat(user, span_notice("Вы надули [name]"))
+ var/obj/structure/inflatable/R = new structure_type(user.loc)
+ transfer_fingerprints_to(R)
+ R.add_fingerprint(user)
+ useResource(user)
+
+/obj/item/inflatable/cyborg/proc/useResource(mob/user)
+ if(!isrobot(user))
+ return FALSE
+ var/mob/living/silicon/robot/R = user
+ if(R.cell.charge < power_use)
+ to_chat(user, span_warning("Недостаточно заряда!"))
+ return FALSE
+ return R.cell.use(power_use)
+
+//Небольшой багфикс "непрозрачного открытого шлюза"
+/obj/structure/inflatable/door/operate()
+ . = ..()
+ opacity = FALSE
diff --git a/modular_ss220/smart_equip_targeted/code/smart_equip_targeted.dm b/modular_ss220/smart_equip_targeted/code/smart_equip_targeted.dm
index 999104356f03..0e2a4aeadea7 100644
--- a/modular_ss220/smart_equip_targeted/code/smart_equip_targeted.dm
+++ b/modular_ss220/smart_equip_targeted/code/smart_equip_targeted.dm
@@ -5,6 +5,10 @@
var/obj/item/storage/equipped_item
if(isstorage(item_in_slot))
equipped_item = item_in_slot
+ if(!istype(equipped_item) && ismodcontrol(item_in_slot))
+ var/obj/item/mod/control/mod = item_in_slot
+ if(mod.bag)
+ equipped_item = mod.bag
if(ismecha(loc) || HAS_TRAIT(src, TRAIT_HANDS_BLOCKED))
return
if(!istype(equipped_item))
diff --git a/modular_ss220/text_to_speech/code/base_seeds/mobs/_base.dm b/modular_ss220/text_to_speech/code/base_seeds/mobs/_base.dm
index 1008faa16277..facb46fd1f48 100644
--- a/modular_ss220/text_to_speech/code/base_seeds/mobs/_base.dm
+++ b/modular_ss220/text_to_speech/code/base_seeds/mobs/_base.dm
@@ -1,5 +1,5 @@
//Fallback values for TTS voices
/mob/living
- tts_seed = "Kleiner"
+ tts_seed = "Angel"
diff --git a/modular_ss220/text_to_speech/code/tts_subsystem.dm b/modular_ss220/text_to_speech/code/tts_subsystem.dm
index a51f699a3bb4..78f5f5233cf1 100644
--- a/modular_ss220/text_to_speech/code/tts_subsystem.dm
+++ b/modular_ss220/text_to_speech/code/tts_subsystem.dm
@@ -279,10 +279,9 @@ SUBSYSTEM_DEF(tts220)
if(traits & TTS_TRAIT_PITCH_WHISPER)
text = provider.pitch_whisper(text)
- var/hash = rustg_hash_string(RUSTG_HASH_MD5, text)
+ var/hash = rustg_hash_string(RUSTG_HASH_MD5, lowertext(text))
var/filename = "data/tts_cache/[seed.name]/[hash]"
- var/datum/callback/play_tts_cb = CALLBACK(src, PROC_REF(play_tts), speaker, listener, filename, is_local, effect, preSFX, postSFX)
if(fexists("[filename].ogg"))
tts_reused++
@@ -290,6 +289,8 @@ SUBSYSTEM_DEF(tts220)
play_tts(speaker, listener, filename, is_local, effect, preSFX, postSFX)
return
+ var/datum/callback/play_tts_cb = CALLBACK(src, PROC_REF(play_tts), speaker, listener, filename, is_local, effect, preSFX, postSFX)
+
if(LAZYLEN(tts_queue[filename]))
tts_reused++
tts_rrps_counter++
@@ -306,14 +307,14 @@ SUBSYSTEM_DEF(tts220)
// Bail if it errored
if(response.errored)
provider.timed_out_requests++
- message_admins("Error connecting to [provider.name] TTS API. Please inform a maintainer or server host. ")
+ log_game(span_warning("Error connecting to [provider.name] TTS API. Please inform a maintainer or server host."))
+ message_admins(span_warning("Error connecting to [provider.name] TTS API. Please inform a maintainer or server host."))
return
if(response.status_code != 200)
provider.failed_requests++
- if(provider.failed_requests >= provider.failed_requests_limit)
- provider.is_enabled = FALSE
- message_admins("Error performing [provider.name] TTS API request (Code: [response.status_code]) ")
+ log_game(span_warning("Error performing [provider.name] TTS API request (Code: [response.status_code])"))
+ message_admins(span_warning("Error performing [provider.name] TTS API request (Code: [response.status_code])"))
tts_request_failed++
if(response.status_code)
if(tts_errors["[response.status_code]"])
@@ -408,7 +409,7 @@ SUBSYSTEM_DEF(tts220)
if(preSFX)
play_sfx(listener, preSFX, output.channel, output.volume, output.environment)
- listener.playsound_local(turf_source, output, volume, S = output, channel = channel, wait = TRUE)
+ output = listener.playsound_local(turf_source, output, volume, S = output, channel = channel, wait = TRUE)
if(!output || output.volume <= 0)
return
@@ -458,7 +459,7 @@ SUBSYSTEM_DEF(tts220)
/datum/controller/subsystem/tts220/proc/sanitize_tts_input(message)
var/hash
if(sanitized_messages_caching)
- hash = rustg_hash_string(RUSTG_HASH_MD5, message)
+ hash = rustg_hash_string(RUSTG_HASH_MD5, lowertext(message))
if(sanitized_messages_cache[hash])
sanitized_messages_cache_hit++
return sanitized_messages_cache[hash]
diff --git a/modular_ss220/title_screen/code/new_player.dm b/modular_ss220/title_screen/code/new_player.dm
index 1aa09cd80e56..aeff79c5ae94 100644
--- a/modular_ss220/title_screen/code/new_player.dm
+++ b/modular_ss220/title_screen/code/new_player.dm
@@ -2,6 +2,7 @@ GLOBAL_LIST_EMPTY(new_player_list)
/mob/new_player/Initialize(mapload)
GLOB.new_player_list += src
+ show_title_screen()
. = ..()
/mob/new_player/Destroy()
diff --git a/modular_ss220/world_view_bigger/_world_view_bigger.dm b/modular_ss220/world_view_bigger/_world_view_bigger.dm
new file mode 100644
index 000000000000..e78008994207
--- /dev/null
+++ b/modular_ss220/world_view_bigger/_world_view_bigger.dm
@@ -0,0 +1,4 @@
+/datum/modpack/world_view_bigger
+ name = "Увеличение world.view"
+ desc = "Увеличивает игровое значение world.view, что увеличивает дальность слышимости у мобов."
+ author = "larentoun"
diff --git a/modular_ss220/world_view_bigger/_world_view_bigger.dme b/modular_ss220/world_view_bigger/_world_view_bigger.dme
new file mode 100644
index 000000000000..0967d4caeada
--- /dev/null
+++ b/modular_ss220/world_view_bigger/_world_view_bigger.dme
@@ -0,0 +1,3 @@
+#include "_world_view_bigger.dm"
+
+#include "code/world_view_bigger.dm"
diff --git a/modular_ss220/world_view_bigger/code/world_view_bigger.dm b/modular_ss220/world_view_bigger/code/world_view_bigger.dm
new file mode 100644
index 000000000000..35e30074ddcc
--- /dev/null
+++ b/modular_ss220/world_view_bigger/code/world_view_bigger.dm
@@ -0,0 +1,2 @@
+/world
+ view = "19x19" // If you ever set this to a non-square value you will need to update a lot of the code!
diff --git a/tgui/packages/tgui/components/ByondUi.js b/tgui/packages/tgui/components/ByondUi.js
index 7bd3cf884986..a5e59bc113ea 100644
--- a/tgui/packages/tgui/components/ByondUi.js
+++ b/tgui/packages/tgui/components/ByondUi.js
@@ -56,7 +56,7 @@ window.addEventListener('beforeunload', () => {
/**
* Get the bounding box of the DOM element.
*/
-const getBoundingBox = (element) => {
+export const getBoundingBox = element => { // SS220 EDIT - ORIGINAL: const getBoundingBox = element => {
const rect = element.getBoundingClientRect();
return {
pos: [rect.left, rect.top],
diff --git a/tgui/packages/tgui/components/NanoMap.js b/tgui/packages/tgui/components/NanoMap.js
index 42a31b4db238..6f9218d46ed0 100644
--- a/tgui/packages/tgui/components/NanoMap.js
+++ b/tgui/packages/tgui/components/NanoMap.js
@@ -1,8 +1,9 @@
import { Component } from 'inferno';
-import { Box, Icon, Tooltip } from '.';
+import { Box, Icon, Tooltip, Button } from '.';
import { useBackend } from '../backend';
import { LabeledList } from './LabeledList';
import { Slider } from './Slider';
+import { getBoundingBox } from "./ByondUi";
const pauseEvent = (e) => {
if (e.stopPropagation) {
@@ -25,8 +26,8 @@ export class NanoMap extends Component {
const Ycenter = window.innerHeight / 2 - 256;
this.state = {
- offsetX: 128,
- offsetY: 48,
+ offsetX: Xcenter,
+ offsetY: Ycenter,
transform: 'none',
dragging: false,
originX: null,
@@ -79,10 +80,22 @@ export class NanoMap extends Component {
this.handleZoom = (_e, value) => {
this.setState((state) => {
const newZoom = Math.min(Math.max(value, 1), 8);
- let zoomDiff = (newZoom - state.zoom) * 1.5;
+ const zoomDiff = newZoom / state.zoom;
+ if (zoomDiff === 1) {
+ return;
+ }
+
state.zoom = newZoom;
- state.offsetX = state.offsetX - 262 * zoomDiff;
- state.offsetY = state.offsetY - 256 * zoomDiff;
+
+ const container = document.getElementsByClassName('NanoMap__container');
+ if (container.length) {
+ const bounds = getBoundingBox(container[0]);
+ const currentCenterX = bounds.size[0] / 2 - state.offsetX;
+ const currentCenterY = bounds.size[1] / 2 - state.offsetY;
+ state.offsetX += currentCenterX - (currentCenterX * zoomDiff);
+ state.offsetY += currentCenterY - (currentCenterY * zoomDiff);
+ }
+
if (props.onZoom) {
props.onZoom(state.zoom);
}
@@ -127,8 +140,17 @@ export class NanoMap extends Component {
}
}
-const NanoMapMarker = (props, context) => {
- const { x, y, zoom = 1, icon, tooltip, color } = props;
+const NanoMapMarker = props => {
+ const {
+ x,
+ y,
+ zoom = 1,
+ icon,
+ tooltip,
+ color,
+ onClick,
+ size = 6,
+ } = props;
const rx = x * 2 * zoom - zoom - 3;
const ry = y * 2 * zoom - zoom - 3;
return (
@@ -137,19 +159,70 @@ const NanoMapMarker = (props, context) => {
position="absolute"
className="NanoMap__marker"
lineHeight="0"
- bottom={ry + 'px'}
- left={rx + 'px'}
- >
-
+ bottom={ry + "px"}
+ left={rx + "px"}
+ onClick={onClick}>
+
);
};
+let ActiveButton;
+class NanoButton extends Component {
+ constructor(props) {
+ super(props);
+ const { act } = useBackend(this.props.context);
+ this.state = {
+ color: this.props.color,
+ };
+ this.handleClick = e => {
+ if (ActiveButton !== undefined) {
+ ActiveButton.setState({
+ color: "blue",
+ });
+ }
+ act('switch_camera', {
+ name: this.props.name,
+ });
+ ActiveButton = this;
+ this.setState({
+ color: "green",
+ });
+ };
+ }
+ render() {
+ let rx = ((this.props.x * 2 * this.props.zoom) - this.props.zoom) - 3;
+ let ry = ((this.props.y * 2 * this.props.zoom) - this.props.zoom) - 3;
+
+ return (
+
+
+
+
+ );
+ }
+}
+NanoMap.NanoButton = NanoButton;
NanoMap.Marker = NanoMapMarker;
-const NanoMapZoomer = (props, context) => {
+
+const NanoMapZoomer = props => {
return (
diff --git a/tgui/packages/tgui/interfaces/AgentCard.js b/tgui/packages/tgui/interfaces/AgentCard.js
new file mode 100644
index 000000000000..cb80202f9ade
--- /dev/null
+++ b/tgui/packages/tgui/interfaces/AgentCard.js
@@ -0,0 +1,184 @@
+import { useBackend, useLocalState } from '../backend';
+import { Button, LabeledList, Section, Tabs, Icon, Box, Fragment } from '../components';
+import { Window } from '../layouts';
+
+export const AgentCard = (props, context) => {
+ const [tabIndex, setTabIndex] = useLocalState(context, 'tabIndex', 0);
+ const decideTab = index => {
+ switch (index) {
+ case 0:
+ return ;
+ case 1:
+ return ;
+ default:
+ return ;
+ }
+ };
+
+ return (
+
+
+
+
+ setTabIndex(0)}>
+ Card Info
+
+ setTabIndex(1)}>
+ Appearance
+
+
+ {decideTab(tabIndex)}
+
+
+
+ );
+};
+
+export const AgentCardInfo = (props, context) => {
+ const { act, data } = useBackend(context);
+ const {
+ registered_name,
+ sex,
+ age,
+ assignment,
+ associated_account_number,
+ blood_type,
+ dna_hash,
+ fingerprint_hash,
+ photo,
+ ai_tracking,
+ } = data;
+
+ return (
+
+
+
+
+ act('change_name')}
+ />
+
+
+ act('change_sex')}
+ />
+
+
+ act('change_age')}
+ />
+
+
+ act('change_occupation')}
+ />
+
+
+ act('change_fingerprints')}
+ />
+
+
+ act('change_blood_type')}
+ />
+
+
+ act('change_dna_hash')}
+ />
+
+
+ act('change_money_account')}
+ />
+
+
+ act('change_photo')}
+ />
+
+
+
+
+
+
+ act('delete_info')}
+ />
+
+
+ act('clear_access')}
+ />
+
+
+ act('change_ai_tracking')}
+ />
+
+
+
+
+ );
+};
+
+export const AgentCardAppearances = (props, context) => {
+ const { act, data } = useBackend(context);
+ const {
+ appearances,
+ } = data;
+ return (
+
+ {appearances.map(appearance_unit => (
+ act('change_appearance', { new_appearance: appearance_unit.name })}
+ />
+ ))}
+
+ );
+};
diff --git a/tgui/packages/tgui/interfaces/CameraConsole220.js b/tgui/packages/tgui/interfaces/CameraConsole220.js
new file mode 100644
index 000000000000..4892b13f85cb
--- /dev/null
+++ b/tgui/packages/tgui/interfaces/CameraConsole220.js
@@ -0,0 +1,227 @@
+import { filter, sortBy } from 'common/collections';
+import { flow } from 'common/fp';
+import { classes } from 'common/react';
+import { createSearch } from 'common/string';
+import { Fragment } from 'inferno';
+import { useBackend, useLocalState } from '../backend';
+import { Button, ByondUi, Input, Section, Box, NanoMap, Tabs, Icon } from '../components';
+import { refocusLayout, Window } from '../layouts';
+
+/**
+ * Returns previous and next camera names relative to the currently
+ * active camera.
+ */
+const prevNextCamera = (cameras, activeCamera) => {
+ if (!activeCamera) {
+ return [];
+ }
+ const index = cameras.findIndex(camera => (
+ camera.name === activeCamera.name
+ ));
+ return [
+ cameras[index - 1]?.name,
+ cameras[index + 1]?.name,
+ ];
+};
+
+/**
+ * Camera selector.
+ *
+ * Filters cameras, applies search terms and sorts the alphabetically.
+ */
+const selectCameras = (cameras, searchText = '') => {
+ const testSearch = createSearch(searchText, camera => camera.name);
+ return flow([
+ // Null camera filter
+ filter(camera => camera?.name),
+ // Optional search term
+ searchText && filter(testSearch),
+ // Slightly expensive, but way better than sorting in BYOND
+ sortBy(camera => camera.name),
+ ])(cameras);
+};
+
+export const CameraConsole220 = (props, context) => {
+ const [tabIndex, setTabIndex] = useLocalState(context, 'tabIndex', 0);
+ const decideTab = index => {
+ switch (index) {
+ case 0:
+ return ;
+ case 1:
+ return ;
+ default:
+ return "WE SHOULDN'T BE HERE!";
+ }
+ };
+
+ return (
+
+
+
+
+ setTabIndex(0)}>
+ Карта
+
+ setTabIndex(1)}>
+ Список
+
+
+ {decideTab(tabIndex)}
+
+
+
+ );
+};
+
+export const CameraConsoleMapContent = (props, context) => {
+ const { act, data, config } = useBackend(context);
+ const cameras = selectCameras(data.cameras);
+ const [zoom, setZoom] = useLocalState(context, 'zoom', 1);
+ const { mapRef, activeCamera, stationLevel } = data;
+ const [prevCameraName, nextCameraName] = prevNextCamera(cameras, activeCamera);
+ return (
+
+
+ setZoom(v)}>
+ {cameras.filter(cam => cam.z === stationLevel).map(cm => (
+
+ ))}
+
+
+
+
+
+ Камера:
+ {activeCamera
+ && activeCamera.name
+ || '—'}
+
+
+ act('switch_camera', {
+ name: prevCameraName,
+ })} />
+ act('switch_camera', {
+ name: nextCameraName,
+ })} />
+
+
+
+
+
+ );
+};
+
+export const CameraConsoleOldContent = (props, context) => {
+ const { act, data, config } = useBackend(context);
+ const { mapRef, activeCamera } = data;
+ const [
+ searchText,
+ setSearchText,
+ ] = useLocalState(context, 'searchText', '');
+ const cameras = selectCameras(data.cameras, searchText);
+ const [
+ prevCameraName,
+ nextCameraName,
+ ] = prevNextCamera(cameras, activeCamera);
+ return (
+
+
+
+
+ setSearchText(value)} />
+
+ {cameras.map(camera => (
+ // We're not using the component here because performance
+ // would be absolutely abysmal (50+ ms for each re-render).
+ {
+ refocusLayout();
+ act('switch_camera', {
+ name: camera.name,
+ });
+ }}>
+ {camera.name}
+
+ ))}
+
+
+
+
+
+
+ Камера:
+ {activeCamera
+ && activeCamera.name
+ || '—'}
+
+
+ act('switch_camera', {
+ name: prevCameraName,
+ })} />
+ act('switch_camera', {
+ name: nextCameraName,
+ })} />
+
+
+
+
+ );
+};
diff --git a/tgui/packages/tgui/interfaces/EmotePanel.js b/tgui/packages/tgui/interfaces/EmotePanel.js
new file mode 100644
index 000000000000..dddd2f6a092d
--- /dev/null
+++ b/tgui/packages/tgui/interfaces/EmotePanel.js
@@ -0,0 +1,184 @@
+import { useBackend, useLocalState } from '../backend';
+import { Window } from '../layouts';
+import { Button, Section, Input, Flex, Icon, Box } from '../components';
+
+export const EmotePanel = (props, context) => {
+ return (
+
+
+
+
+
+ );
+};
+
+export const EmotePanelContent = (props, context) => {
+ const { act, data } = useBackend(context);
+ const { emotes } = data;
+
+ const [searchText, setSearchText] = useLocalState(
+ context,
+ 'searchText',
+ ''
+ );
+
+ const [filterVisible, toggleVisualFilter] = useLocalState(
+ context,
+ 'filterVisible',
+ ''
+ )
+
+ const [filterAudible, toggleAudibleFilter] = useLocalState(
+ context,
+ 'filterAudible',
+ ''
+ )
+
+ const [filterSound, toggleSoundFilter] = useLocalState(
+ context,
+ 'filterSound',
+ ''
+ )
+
+ const [filterHands, toggleHandsFilter] = useLocalState(
+ context,
+ 'filterHands',
+ ''
+ )
+
+ const [filterTargettable, toggleTargettableFilter] = useLocalState(
+ context,
+ 'filterTargettable',
+ ''
+ )
+
+ const [useTarget, toggleUseTarget] = useLocalState(
+ context,
+ 'useTarget',
+ ''
+ )
+
+ let searchBar = (
+ setSearchText(value)}
+ />
+ );
+
+ return (
+
+
+ toggleVisualFilter(!filterVisible)}
+ />
+ toggleAudibleFilter(!filterAudible)}
+ />
+ toggleSoundFilter(!filterSound)}
+ />
+ toggleHandsFilter(!filterHands)}
+ />
+ toggleTargettableFilter(!filterTargettable)}
+ />
+
+ }
+ >
+ {searchBar}
+
+ 0
+ ? `Результаты поиска "${searchText}"`
+ : `Все эмоции`
+ }
+ fill
+ buttons={
+ toggleUseTarget(!useTarget)}
+ >
+ Выбирать цель
+
+ }
+ >
+
+
+ {emotes
+ .filter(emote => emote.key &&
+ (searchText.length > 0 ? (emote.key.toLowerCase().includes(searchText.toLowerCase()) || emote.name.toLowerCase().includes(searchText.toLowerCase())) : true) &&
+ (filterVisible ? emote.visible : true) &&
+ (filterAudible ? emote.audible : true) &&
+ (filterSound ? emote.sound : true) &&
+ (filterHands ? emote.hands : true) &&
+ (filterTargettable ? emote.targettable : true))
+ .map((emote) =>
+
+ act('play_emote', {
+ emote_path: emote.emote_path,
+ useTarget: useTarget,
+ })
+ }>
+ {emote.visible ? ( ) : ''}
+ {emote.audible ? ( ) : ''}
+ {emote.sound ? ( ) : ''}
+ {emote.hands ? ( ) : ''}
+ {emote.targettable ? ( ) : ''}
+ {emote.name.toUpperCase()}
+
+ )}
+
+
+
+
+ );
+};
diff --git a/tgui/packages/tgui/interfaces/ModpacksList.js b/tgui/packages/tgui/interfaces/ModpacksList.js
new file mode 100644
index 000000000000..198329e19bc3
--- /dev/null
+++ b/tgui/packages/tgui/interfaces/ModpacksList.js
@@ -0,0 +1,84 @@
+import { useBackend, useLocalState } from '../backend';
+import { Window } from '../layouts';
+import { Section, Input, Flex, Collapsible } from '../components';
+
+export const ModpacksList = (props, context) => {
+ return (
+
+
+
+
+
+ );
+};
+
+export const ModpacksListContent = (props, context) => {
+ const { act, data } = useBackend(context);
+ const { modpacks } = data;
+
+ const [searchText, setSearchText] = useLocalState(
+ context,
+ 'searchText',
+ ''
+ );
+
+ const searchBar = (
+ setSearchText(value)}
+ />
+ );
+
+ return (
+
+
+ 0
+ ? `Результаты поиска "${searchText}"`
+ : `Все модификации`
+ }
+ fill
+ >
+
+
+ {modpacks
+ .filter(modpack => modpack.name &&
+ (searchText.length > 0 ?
+ (modpack.name.toLowerCase().includes(searchText.toLowerCase()) ||
+ modpack.desc.toLowerCase().includes(searchText.toLowerCase()) ||
+ modpack.author.toLowerCase().includes(searchText.toLowerCase())
+ ) : true))
+ .map((modpack) =>
+
+
+
+
+ )}
+
+
+
+
+ );
+};
diff --git a/tgui/packages/tgui/public/tgui.bundle.css b/tgui/packages/tgui/public/tgui.bundle.css
index 5d6bf39b2062..9ce4ef7d8b9c 100644
--- a/tgui/packages/tgui/public/tgui.bundle.css
+++ b/tgui/packages/tgui/public/tgui.bundle.css
@@ -1 +1 @@
-body,html{box-sizing:border-box;height:100%;margin:0;font-size:12px}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{display:block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}td,th{vertical-align:baseline;text-align:left}.candystripe:nth-child(odd){background-color:rgba(0,0,0,.25)}.color-black{color:#0d0d0d!important}.color-white{color:#fff!important}.color-red{color:#d33!important}.color-orange{color:#f37827!important}.color-yellow{color:#fbd814!important}.color-olive{color:#c0d919!important}.color-green{color:#22be47!important}.color-teal{color:#00c5bd!important}.color-blue{color:#238cdc!important}.color-violet{color:#6c3fcc!important}.color-purple{color:#a93bcd!important}.color-pink{color:#e2439c!important}.color-brown{color:#af6d43!important}.color-grey{color:#7d7d7d!important}.color-good{color:#62b62a!important}.color-average{color:#f1951d!important}.color-bad{color:#d33!important}.color-label{color:#8496ab!important}.color-bg-black{background-color:#000!important}.color-bg-white{background-color:#d9d9d9!important}.color-bg-red{background-color:#bd2020!important}.color-bg-orange{background-color:#d95e0c!important}.color-bg-yellow{background-color:#d9b804!important}.color-bg-olive{background-color:#9aad14!important}.color-bg-green{background-color:#1b9638!important}.color-bg-teal{background-color:#009a93!important}.color-bg-blue{background-color:#1c71b1!important}.color-bg-violet{background-color:#552dab!important}.color-bg-purple{background-color:#8b2baa!important}.color-bg-pink{background-color:#cf2082!important}.color-bg-brown{background-color:#8c5836!important}.color-bg-grey{background-color:#646464!important}.color-bg-good{background-color:#4d9121!important}.color-bg-average{background-color:#cd7a0d!important}.color-bg-bad{background-color:#bd2020!important}.color-bg-label{background-color:#657a94!important}.debug-layout,.debug-layout :not(g):not(path){color:hsla(0,0%,100%,.9)!important;background:transparent!important;outline:1px solid hsla(0,0%,100%,.5)!important;box-shadow:none!important;filter:none!important}.debug-layout:hover,.debug-layout :not(g):not(path):hover{outline-color:hsla(0,0%,100%,.8)!important}.display-none{display:none}.display-block{display:block}.display-inline{display:inline}.display-inline-block{display:inline-block}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.ml-0{margin-left:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.m-1{margin:6px}.mx-1{margin-left:6px;margin-right:6px}.my-1{margin-top:6px;margin-bottom:6px}.ml-1{margin-left:6px}.mt-1{margin-top:6px}.mr-1{margin-right:6px}.mb-1{margin-bottom:6px}.m-2{margin:12px}.mx-2{margin-left:12px;margin-right:12px}.my-2{margin-top:12px;margin-bottom:12px}.ml-2{margin-left:12px}.mt-2{margin-top:12px}.mr-2{margin-right:12px}.mb-2{margin-bottom:12px}.outline-dotted{outline-style:dotted!important;outline-width:2px!important}.outline-dashed{outline-style:dashed!important;outline-width:2px!important}.outline-solid{outline-style:solid!important;outline-width:2px!important}.outline-double{outline-style:double!important;outline-width:2px!important}.outline-groove{outline-style:groove!important;outline-width:2px!important}.outline-ridge{outline-style:ridge!important;outline-width:2px!important}.outline-inset{outline-style:inset!important;outline-width:2px!important}.outline-outset{outline-style:outset!important;outline-width:2px!important}.outline-color-black{outline-color:#0d0d0d!important}.outline-color-white{outline-color:#fff!important}.outline-color-red{outline-color:#d33!important}.outline-color-orange{outline-color:#f37827!important}.outline-color-yellow{outline-color:#fbd814!important}.outline-color-olive{outline-color:#c0d919!important}.outline-color-green{outline-color:#22be47!important}.outline-color-teal{outline-color:#00c5bd!important}.outline-color-blue{outline-color:#238cdc!important}.outline-color-violet{outline-color:#6c3fcc!important}.outline-color-purple{outline-color:#a93bcd!important}.outline-color-pink{outline-color:#e2439c!important}.outline-color-brown{outline-color:#af6d43!important}.outline-color-grey{outline-color:#7d7d7d!important}.outline-color-good{outline-color:#62b62a!important}.outline-color-average{outline-color:#f1951d!important}.outline-color-bad{outline-color:#d33!important}.outline-color-label{outline-color:#8496ab!important}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-baseline{text-align:baseline}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-pre{white-space:pre}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-underline{text-decoration:underline}.BlockQuote{color:#8496ab;border-left:2px solid #8496ab;padding-left:6px;margin-bottom:6px}.BlockQuote:last-child{margin-bottom:0}.Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.Button:last-child{margin-right:0}.Button .fa,.Button .far,.Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.Button--hasContent .fa,.Button--hasContent .far,.Button--hasContent .fas{margin-right:3px}.Button--hasContent.Button--iconRight .fa,.Button--hasContent.Button--iconRight .far,.Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.Button--fluid{display:block;margin-left:0;margin-right:0}.Button--multiLine{white-space:normal;word-wrap:break-word}.Button--color--black{transition:color 50ms,background-color 50ms;background-color:#000;color:#fff}.Button--color--black:hover{transition:color 0ms,background-color 0ms}.Button--color--black:focus{transition:color .1s,background-color .1s}.Button--color--black:focus,.Button--color--black:hover{background-color:#0a0a0a;color:#fff}.Button--color--white{transition:color 50ms,background-color 50ms;background-color:#d9d9d9;color:#000}.Button--color--white:hover{transition:color 0ms,background-color 0ms}.Button--color--white:focus{transition:color .1s,background-color .1s}.Button--color--white:focus,.Button--color--white:hover{background-color:#f3f3f3;color:#000}.Button--color--red{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--red:hover{transition:color 0ms,background-color 0ms}.Button--color--red:focus{transition:color .1s,background-color .1s}.Button--color--red:focus,.Button--color--red:hover{background-color:#d52b2b;color:#fff}.Button--color--orange{transition:color 50ms,background-color 50ms;background-color:#d95e0c;color:#fff}.Button--color--orange:hover{transition:color 0ms,background-color 0ms}.Button--color--orange:focus{transition:color .1s,background-color .1s}.Button--color--orange:focus,.Button--color--orange:hover{background-color:#ed6f1d;color:#fff}.Button--color--yellow{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--yellow:hover{transition:color 0ms,background-color 0ms}.Button--color--yellow:focus{transition:color .1s,background-color .1s}.Button--color--yellow:focus,.Button--color--yellow:hover{background-color:#f3d00e;color:#000}.Button--color--olive{transition:color 50ms,background-color 50ms;background-color:#9aad14;color:#fff}.Button--color--olive:hover{transition:color 0ms,background-color 0ms}.Button--color--olive:focus{transition:color .1s,background-color .1s}.Button--color--olive:focus,.Button--color--olive:hover{background-color:#afc41f;color:#fff}.Button--color--green{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--color--green:hover{transition:color 0ms,background-color 0ms}.Button--color--green:focus{transition:color .1s,background-color .1s}.Button--color--green:focus,.Button--color--green:hover{background-color:#27ab46;color:#fff}.Button--color--teal{transition:color 50ms,background-color 50ms;background-color:#009a93;color:#fff}.Button--color--teal:hover{transition:color 0ms,background-color 0ms}.Button--color--teal:focus{transition:color .1s,background-color .1s}.Button--color--teal:focus,.Button--color--teal:hover{background-color:#0aafa8;color:#fff}.Button--color--blue{transition:color 50ms,background-color 50ms;background-color:#1c71b1;color:#fff}.Button--color--blue:hover{transition:color 0ms,background-color 0ms}.Button--color--blue:focus{transition:color .1s,background-color .1s}.Button--color--blue:focus,.Button--color--blue:hover{background-color:#2883c8;color:#fff}.Button--color--violet{transition:color 50ms,background-color 50ms;background-color:#552dab;color:#fff}.Button--color--violet:hover{transition:color 0ms,background-color 0ms}.Button--color--violet:focus{transition:color .1s,background-color .1s}.Button--color--violet:focus,.Button--color--violet:hover{background-color:#653ac1;color:#fff}.Button--color--purple{transition:color 50ms,background-color 50ms;background-color:#8b2baa;color:#fff}.Button--color--purple:hover{transition:color 0ms,background-color 0ms}.Button--color--purple:focus{transition:color .1s,background-color .1s}.Button--color--purple:focus,.Button--color--purple:hover{background-color:#9e38c1;color:#fff}.Button--color--pink{transition:color 50ms,background-color 50ms;background-color:#cf2082;color:#fff}.Button--color--pink:hover{transition:color 0ms,background-color 0ms}.Button--color--pink:focus{transition:color .1s,background-color .1s}.Button--color--pink:focus,.Button--color--pink:hover{background-color:#dd3794;color:#fff}.Button--color--brown{transition:color 50ms,background-color 50ms;background-color:#8c5836;color:#fff}.Button--color--brown:hover{transition:color 0ms,background-color 0ms}.Button--color--brown:focus{transition:color .1s,background-color .1s}.Button--color--brown:focus,.Button--color--brown:hover{background-color:#a06844;color:#fff}.Button--color--grey{transition:color 50ms,background-color 50ms;background-color:#646464;color:#fff}.Button--color--grey:hover{transition:color 0ms,background-color 0ms}.Button--color--grey:focus{transition:color .1s,background-color .1s}.Button--color--grey:focus,.Button--color--grey:hover{background-color:#757575;color:#fff}.Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.Button--color--good:hover{transition:color 0ms,background-color 0ms}.Button--color--good:focus{transition:color .1s,background-color .1s}.Button--color--good:focus,.Button--color--good:hover{background-color:#5da52d;color:#fff}.Button--color--average{transition:color 50ms,background-color 50ms;background-color:#cd7a0d;color:#fff}.Button--color--average:hover{transition:color 0ms,background-color 0ms}.Button--color--average:focus{transition:color .1s,background-color .1s}.Button--color--average:focus,.Button--color--average:hover{background-color:#e68d18;color:#fff}.Button--color--bad{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--bad:hover{transition:color 0ms,background-color 0ms}.Button--color--bad:focus{transition:color .1s,background-color .1s}.Button--color--bad:focus,.Button--color--bad:hover{background-color:#d52b2b;color:#fff}.Button--color--label{transition:color 50ms,background-color 50ms;background-color:#657a94;color:#fff}.Button--color--label:hover{transition:color 0ms,background-color 0ms}.Button--color--label:focus{transition:color .1s,background-color .1s}.Button--color--label:focus,.Button--color--label:hover{background-color:#7b8da4;color:#fff}.Button--color--default{transition:color 50ms,background-color 50ms;background-color:#3e6189;color:#fff}.Button--color--default:hover{transition:color 0ms,background-color 0ms}.Button--color--default:focus{transition:color .1s,background-color .1s}.Button--color--default:focus,.Button--color--default:hover{background-color:#4c729d;color:#fff}.Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--caution:hover{transition:color 0ms,background-color 0ms}.Button--color--caution:focus{transition:color .1s,background-color .1s}.Button--color--caution:focus,.Button--color--caution:hover{background-color:#f3d00e;color:#000}.Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--danger:hover{transition:color 0ms,background-color 0ms}.Button--color--danger:focus{transition:color .1s,background-color .1s}.Button--color--danger:focus,.Button--color--danger:hover{background-color:#d52b2b;color:#fff}.Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.Button--color--transparent:focus{transition:color .1s,background-color .1s}.Button--color--transparent:focus,.Button--color--transparent:hover{background-color:#323232;color:#fff}.Button--disabled{background-color:#999!important}.Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--selected:hover{transition:color 0ms,background-color 0ms}.Button--selected:focus{transition:color .1s,background-color .1s}.Button--selected:focus,.Button--selected:hover{background-color:#27ab46;color:#fff}.Collapsible{margin-bottom:.5rem}.Collapsible:last-child{margin-bottom:0}.ColorBox{display:inline-block;width:12px;height:12px;line-height:12px;text-align:center}.Dimmer{display:flex;justify-content:center;align-items:center;position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.75);z-index:1}.Divider--horizontal{margin:6px 0}.Divider--horizontal:not(.Divider--hidden){border-top:2px solid hsla(0,0%,100%,.1)}.Divider--vertical{height:100%;margin:0 6px}.Divider--vertical:not(.Divider--hidden){border-left:2px solid hsla(0,0%,100%,.1)}.Dropdown{position:relative}.Dropdown__control{position:relative;display:inline-block;font-family:Verdana,sans-serif;font-size:12px;width:100px;line-height:17px;user-select:none}.Dropdown__arrow-button{float:right;padding-left:6px;border-left:1px solid #000;border-left:1px solid rgba(0,0,0,.25)}.Dropdown__menu{overflow-y:auto;overflow-y:scroll}.Dropdown__menu,.Dropdown__menu-noscroll{position:absolute;z-index:5;width:100px;max-height:200px;border-radius:0 0 2px 2px;background-color:#000;background-color:rgba(0,0,0,.75)}.Dropdown__menu-noscroll{overflow-y:auto}.Dropdown__menuentry{padding:2px 4px;font-family:Verdana,sans-serif;font-size:12px;line-height:17px;transition:background-color .1s}.Dropdown__menuentry:hover{background-color:#444;transition:background-color 0ms}.Dropdown__over{top:auto;bottom:100%}.FatalError{display:block!important;position:absolute;top:0;left:0;right:0;bottom:0;padding:12px;font-size:12px;font-family:Consolas,monospace;color:#fff;background-color:#00d;z-index:1000;overflow:hidden;text-align:center}.FatalError__logo{display:inline-block;text-align:left;font-size:10px;line-height:8px;position:relative;margin-top:12px;top:0;left:0;animation:FatalError__rainbow 2s linear infinite alternate,FatalError__shadow 4s linear infinite alternate,FatalError__tfmX 3s infinite alternate,FatalError__tfmY 4s infinite alternate;white-space:pre-wrap;word-break:break-all}.FatalError__header{margin-top:12px}.FatalError__stack{text-align:left;white-space:pre-wrap;word-break:break-all;margin-top:24px;margin-bottom:24px}.FatalError__footer{margin-bottom:24px}@keyframes FatalError__rainbow{0%{color:#ff0}50%{color:#0ff}to{color:#f0f}}@keyframes FatalError__shadow{0%{left:-2px;text-shadow:4px 0 #f0f}50%{left:0;text-shadow:0 0 #0ff}to{left:2px;text-shadow:-4px 0 #ff0}}@keyframes FatalError__tfmX{0%{left:15px}to{left:-15px}}@keyframes FatalError__tfmY{to{top:-15px}}.Flex{display:-ms-flexbox;display:flex}.Flex--inline{display:inline-flex}.Flex--ie8{display:table!important}.Flex--ie8--column{display:block!important}.Flex--ie8--column>.Flex__item{display:block!important;margin-left:6px;margin-right:6px}.Flex__item--ie8{display:table-cell!important}.Flex--spacing--1{margin:0 -3px}.Flex--spacing--1>.Flex__item{margin:0 3px}.Flex--spacingPrecise--1{margin:-1px}.Flex--spacingPrecise--1>.Flex__item{margin:1px}.Flex--spacing--2{margin:0 -6px}.Flex--spacing--2>.Flex__item{margin:0 6px}.Flex--spacingPrecise--2{margin:-2px}.Flex--spacingPrecise--2>.Flex__item{margin:2px}.Knob{position:relative;font-size:1rem;width:2.6em;height:2.6em;margin:0 auto -.2em;cursor:n-resize}.Knob:after{content:".";color:transparent;line-height:2.5em}.Knob__circle{position:absolute;top:.1em;bottom:.1em;left:.1em;right:.1em;margin:.3em;background-color:#333;background-image:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0));border-radius:50%;box-shadow:0 .05em .5em 0 rgba(0,0,0,.5)}.Knob__cursorBox{position:absolute;top:0;bottom:0;left:0;right:0}.Knob__cursor{position:relative;top:.05em;margin:0 auto;width:.2em;height:.8em;background-color:hsla(0,0%,100%,.9)}.Knob__popupValue,.Knob__popupValue--right{position:absolute;top:-2rem;right:50%;font-size:1rem;text-align:center;padding:.25rem .5rem;background-color:#000;transform:translateX(50%);white-space:nowrap}.Knob__popupValue--right{top:.25rem;right:-50%}.Knob__ring{position:absolute;top:0;bottom:0;left:0;right:0;padding:.1em}.Knob__ringTrackPivot{transform:rotate(135deg)}.Knob__ringTrack{fill:transparent;stroke:hsla(0,0%,100%,.1);stroke-width:8;stroke-linecap:round;stroke-dasharray:235.62}.Knob__ringFillPivot{transform:rotate(135deg)}.Knob--bipolar .Knob__ringFillPivot{transform:rotate(270deg)}.Knob__ringFill{fill:transparent;stroke:#6a96c9;stroke-width:8;stroke-linecap:round;stroke-dasharray:314.16;transition:stroke 50ms}.Knob--color--black .Knob__ringFill{stroke:#0d0d0d}.Knob--color--white .Knob__ringFill{stroke:#fff}.Knob--color--red .Knob__ringFill{stroke:#d33}.Knob--color--orange .Knob__ringFill{stroke:#f37827}.Knob--color--yellow .Knob__ringFill{stroke:#fbd814}.Knob--color--olive .Knob__ringFill{stroke:#c0d919}.Knob--color--green .Knob__ringFill{stroke:#22be47}.Knob--color--teal .Knob__ringFill{stroke:#00c5bd}.Knob--color--blue .Knob__ringFill{stroke:#238cdc}.Knob--color--violet .Knob__ringFill{stroke:#6c3fcc}.Knob--color--purple .Knob__ringFill{stroke:#a93bcd}.Knob--color--pink .Knob__ringFill{stroke:#e2439c}.Knob--color--brown .Knob__ringFill{stroke:#af6d43}.Knob--color--grey .Knob__ringFill{stroke:#7d7d7d}.Knob--color--good .Knob__ringFill{stroke:#62b62a}.Knob--color--average .Knob__ringFill{stroke:#f1951d}.Knob--color--bad .Knob__ringFill{stroke:#d33}.Knob--color--label .Knob__ringFill{stroke:#8496ab}.LabeledList{display:table;width:100%;width:calc(100% + 12px);border-collapse:collapse;border-spacing:0;margin:-3px -6px 0;padding:0}.LabeledList__row{display:table-row}.LabeledList__row:last-child .LabeledList__cell{padding-bottom:0}.LabeledList__cell{display:table-cell;margin:0;padding:3px 6px;border:0;text-align:left;vertical-align:baseline}.LabeledList__label{width:1%;white-space:nowrap;min-width:60px}.LabeledList__buttons{width:.1%;white-space:nowrap;text-align:right;padding-top:1px;padding-bottom:0}.LabeledList__breakContents{word-break:break-all;word-wrap:break-word}.Modal{background-color:#252525;max-width:calc(100% - 1rem);padding:1rem;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.NanoMap__container{overflow:hidden;width:100%;z-index:1}.NanoMap__marker{z-index:10;padding:0;margin:0}.NanoMap__zoomer{z-index:20;background-color:rgba(0,0,0,.33);position:absolute;top:30px;left:0;padding:.5rem;width:20%}.NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.NoticeBox--color--black{color:#fff;background-color:#000}.NoticeBox--color--white{color:#000;background-color:#b3b3b3}.NoticeBox--color--red{color:#fff;background-color:#701f1f}.NoticeBox--color--orange{color:#fff;background-color:#854114}.NoticeBox--color--yellow{color:#000;background-color:#83710d}.NoticeBox--color--olive{color:#000;background-color:#576015}.NoticeBox--color--green{color:#fff;background-color:#174e24}.NoticeBox--color--teal{color:#fff;background-color:#064845}.NoticeBox--color--blue{color:#fff;background-color:#1b4565}.NoticeBox--color--violet{color:#fff;background-color:#3b2864}.NoticeBox--color--purple{color:#fff;background-color:#542663}.NoticeBox--color--pink{color:#fff;background-color:#802257}.NoticeBox--color--brown{color:#fff;background-color:#4c3729}.NoticeBox--color--grey{color:#fff;background-color:#3e3e3e}.NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.NoticeBox--color--average{color:#fff;background-color:#7b4e13}.NoticeBox--color--bad{color:#fff;background-color:#701f1f}.NoticeBox--color--label{color:#fff;background-color:#53565a}.NoticeBox--type--info{color:#fff;background-color:#235982}.NoticeBox--type--success{color:#fff;background-color:#1e662f}.NoticeBox--type--warning{color:#fff;background-color:#a95219}.NoticeBox--type--danger{color:#fff;background-color:#8f2828}.Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.Input--fluid{display:block;width:auto}.Input__baseline{display:inline-block;color:transparent}.Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.NumberInput{position:relative;display:inline-block;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#88bfff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.NumberInput--fluid{display:block}.NumberInput__content{margin-left:6px}.NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #88bfff;background-color:#88bfff}.NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:transparent;transition:border-color .5s}.ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.ProgressBar__fill--animated{transition:background-color .5s,width .5s}.ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.ProgressBar--color--default{border:1px solid #3e6189}.ProgressBar--color--default .ProgressBar__fill{background-color:#3e6189}.ProgressBar--color--black{border:1px solid #000!important}.ProgressBar--color--black .ProgressBar__fill{background-color:#000}.ProgressBar--color--white{border:1px solid #d9d9d9!important}.ProgressBar--color--white .ProgressBar__fill{background-color:#d9d9d9}.ProgressBar--color--red{border:1px solid #bd2020!important}.ProgressBar--color--red .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--orange{border:1px solid #d95e0c!important}.ProgressBar--color--orange .ProgressBar__fill{background-color:#d95e0c}.ProgressBar--color--yellow{border:1px solid #d9b804!important}.ProgressBar--color--yellow .ProgressBar__fill{background-color:#d9b804}.ProgressBar--color--olive{border:1px solid #9aad14!important}.ProgressBar--color--olive .ProgressBar__fill{background-color:#9aad14}.ProgressBar--color--green{border:1px solid #1b9638!important}.ProgressBar--color--green .ProgressBar__fill{background-color:#1b9638}.ProgressBar--color--teal{border:1px solid #009a93!important}.ProgressBar--color--teal .ProgressBar__fill{background-color:#009a93}.ProgressBar--color--blue{border:1px solid #1c71b1!important}.ProgressBar--color--blue .ProgressBar__fill{background-color:#1c71b1}.ProgressBar--color--violet{border:1px solid #552dab!important}.ProgressBar--color--violet .ProgressBar__fill{background-color:#552dab}.ProgressBar--color--purple{border:1px solid #8b2baa!important}.ProgressBar--color--purple .ProgressBar__fill{background-color:#8b2baa}.ProgressBar--color--pink{border:1px solid #cf2082!important}.ProgressBar--color--pink .ProgressBar__fill{background-color:#cf2082}.ProgressBar--color--brown{border:1px solid #8c5836!important}.ProgressBar--color--brown .ProgressBar__fill{background-color:#8c5836}.ProgressBar--color--grey{border:1px solid #646464!important}.ProgressBar--color--grey .ProgressBar__fill{background-color:#646464}.ProgressBar--color--good{border:1px solid #4d9121!important}.ProgressBar--color--good .ProgressBar__fill{background-color:#4d9121}.ProgressBar--color--average{border:1px solid #cd7a0d!important}.ProgressBar--color--average .ProgressBar__fill{background-color:#cd7a0d}.ProgressBar--color--bad{border:1px solid #bd2020!important}.ProgressBar--color--bad .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--label{border:1px solid #657a94!important}.ProgressBar--color--label .ProgressBar__fill{background-color:#657a94}.Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Section:last-child{margin-bottom:0}.Section--flex{display:flex;flex-flow:column}.Section--flex .Section__content{overflow:auto;flex:1}.Section__title{padding:6px;border-bottom:2px solid #4972a1}.Section__titleText{font-size:14px;font-weight:700}.Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.Section__content{padding:8px 6px}.Section__content--noTopPadding{padding-top:0}.Section__content--stretchContents{height:100%}.Section--level--1 .Section__titleText{font-size:14px}.Section--level--2 .Section__titleText{font-size:13px}.Section--level--3 .Section__titleText{font-size:12px}.Section--level--2,.Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.Slider{cursor:e-resize}.Slider__cursorOffset{position:absolute;top:0;left:0;bottom:0;transition:none!important}.Slider__cursor{position:absolute;top:0;right:-1px;bottom:0;width:0;border-left:2px solid #fff}.Slider__pointer{position:absolute;right:-5px;bottom:-4px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff}.Slider__popupValue{position:absolute;right:0;top:-22px;padding:2px 4px;background-color:#000;transform:translateX(50%);white-space:nowrap}.Table{display:table;width:100%;border-collapse:collapse;border-spacing:0;margin:0}.Table--collapsing{width:auto}.Table__row{display:table-row}.Table__cell{display:table-cell;padding:0 3px}.Table__cell:first-child{padding-left:0}.Table__cell:last-child{padding-right:0}.Table__cell--header,.Table__row--header .Table__cell{font-weight:700;padding-bottom:6px}.Table__cell--collapsing{width:1%;white-space:nowrap}.Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:2px}.Tabs--vertical{margin-right:9px}.Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:2px}.Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#000;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.Tooltip--long:after{width:250px;white-space:normal}.Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.Tooltip--left:hover:after,.Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.Tooltip--right:after{top:50%;left:100%}.Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.AccountsUplinkTerminal__list tr>td{text-align:center}.AccountsUplinkTerminal__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.AccountsUplinkTerminal__list tr:not(:first-child):focus,.AccountsUplinkTerminal__list tr:not(:first-child):hover{background-color:#252525}.AccountsUplinkTerminal__listRow--SUSPENDED{background-color:#740c20}.BrigCells__list .Table__cell,.BrigCells__list .Table__row--header{text-align:center}.BrigCells__list .BrigCells__listRow--active .Table__cell{background-color:#890e26}.CameraConsole__left{position:absolute;top:0;bottom:0;left:0;width:220px}.CameraConsole__right{position:absolute;top:0;bottom:0;left:220px;right:0;background-color:rgba(0,0,0,.33)}.CameraConsole__toolbar{left:0;margin:3px 12px 0}.CameraConsole__toolbar,.CameraConsole__toolbarRight{position:absolute;top:0;right:0;height:24px;line-height:24px}.CameraConsole__toolbarRight{margin:4px 6px 0}.CameraConsole__map{position:absolute;top:26px;bottom:0;left:0;right:0;margin:6px;text-align:center}.CameraConsole__map .NoticeBox{margin-top:calc(50% - 24px)}.Contractor *{font-family:Courier New,Courier,monospace}.Contractor .Section__titleText{display:inline-block;max-width:70%}.Contractor .Section__titleText>.Flex{width:100%}.Contractor .Section__titleText>.Flex>.Flex__item:first-of-type{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.Contractor__Contract .Button{font-size:11px;white-space:normal!important}.Contractor__photoZoom{text-align:center}.Contractor__photoZoom>img{width:96px;-ms-interpolation-mode:nearest-neighbor}.Contractor__photoZoom>.Button{position:absolute}.Exofab .Dropdown__control{margin-bottom:-1px}.Exofab .Dropdown__selected-text{overflow:hidden;text-overflow:ellipsis;width:80%;display:inline-block;margin-bottom:-3px}.Exofab__materials{height:100%;overflow:auto}.Exofab__materials .Section__content{height:calc(100% - 31px)}.Exofab__material:not(.Exofab__material--line){margin-bottom:.25rem}.Exofab__material:not(.Exofab__material--line) .Button{width:28px;margin-right:.5rem}.Exofab__material:not(.Exofab__material--line) .Button img{vertical-align:middle}.Exofab__material--line .Button{background-color:transparent;width:14px}.Exofab__material--line .Button img{width:16px}.Exofab__material--name{color:#7e90a7;text-transform:capitalize}.Exofab__material .Button{margin-bottom:0;padding:0;vertical-align:middle}.Exofab__material .Button img{margin-left:-2px}.Exofab__queue{height:100%}.Exofab__queue--queue .Button{margin:0;transform:scale(.75)}.Exofab__queue--queue .Button:first-of-type{margin-left:.25rem}.Exofab__queue--time{text-align:center;color:#7e90a7}.Exofab__queue--deficit{text-align:center;color:#db2828;font-weight:700}.Exofab__queue--deficit>div:not(.Divider){display:inline-block;margin-bottom:-.75rem}.Exofab__queue .Section__content{height:calc(100% - 31px)}.Exofab__queue .Exofab__material--amount{margin-right:.25rem}.Exofab__design--cost{display:inline-block;vertical-align:middle;margin-top:.33rem}.Exofab__design--cost>div{display:inline-block}.Exofab__design--cost .Exofab__material{margin-left:.25rem}.Exofab__design--time{display:inline-block;margin-left:.5rem;color:#7e90a7}.Exofab__design--time i{margin-right:.25rem}.Exofab__designs .Section__content{height:calc(100% - 31px);overflow:auto}.Exofab__building{height:40px}.Exofab__building .ProgressBar{width:100%;height:100%}.Exofab__building .ProgressBar__content{line-height:22px}.Ingredient__Table tr:nth-child(2n){background-color:#333}.Ingredient__Table td{padding:3px}.Library__Booklist tr>td{text-align:center}.Library__Booklist tr:not(:first-child){height:24px;line-height:24px;transition:background-color 50ms}.Library__Booklist tr:not(:first-child):focus,.Library__Booklist tr:not(:first-child):hover{background-color:#252525}.Library__SearchContainer{background-color:rgba(37,37,37,.5)}.Library__SearchContainer tr td:first-child{width:60%}.Newscaster__menu{width:40px;height:100%;margin-right:.5rem;flex-basis:content}.Newscaster__menu .Section__content{padding-left:0}.Newscaster__menuButton{color:#767676;cursor:pointer;position:relative;margin-left:6px;margin-right:1rem;white-space:nowrap;transition:color .1s}.Newscaster__menuButton--title{width:80%;display:none;overflow:hidden;text-overflow:ellipsis}.Newscaster__menuButton--unread{background-color:#e45e5e;color:#fff;font-size:10px;text-align:center;border-radius:32px;display:inline-block;width:12px;position:absolute;left:16px;margin-top:14px}.Newscaster__menuButton--selected{color:#fff}.Newscaster__menuButton--selected:after{content:"";background-color:#4972a1;width:2px;height:24px;position:absolute;left:-6px}.Newscaster__menuButton--security{color:#4972a1}.Newscaster__menuButton i{width:30px;text-align:center;vertical-align:middle;margin-left:-1px;margin-right:.5rem;margin-top:1px}.Newscaster__menuButton:hover{color:#fff}.Newscaster__menuButton:hover:before{background-color:#fff}.Newscaster__menuButton:not(:last-of-type){margin-bottom:.5rem}.Newscaster__menu--open{width:175px}.Newscaster__menu--open .Newscaster__menuButton--title{display:inline-block}.Newscaster__jobCategory--security .Section__title{color:#a14c49;border-bottom:2px solid #a14c49!important}.Newscaster__jobCategory--engineering .Section__title{color:#a17849;border-bottom:2px solid #a17849!important}.Newscaster__jobCategory--medical .Section__title{color:#499ea1;border-bottom:2px solid #499ea1!important}.Newscaster__jobCategory--science .Section__title{color:#a14972;border-bottom:2px solid #a14972!important}.Newscaster__jobCategory--service .Section__title{color:#a1499e;border-bottom:2px solid #a1499e!important}.Newscaster__jobCategory--supply .Section__title{color:#9ea149;border-bottom:2px solid #9ea149!important}.Newscaster__jobCategory:last-child{margin-bottom:.5rem}.Newscaster__jobOpening--command{font-weight:700}.Newscaster__jobOpening:not(:last-child){margin-bottom:.5rem}.Newscaster__emptyNotice{color:#7e90a7;text-align:center;position:absolute;top:50%;left:50%;transform:translateY(-50%) translateX(-50%)}.Newscaster__emptyNotice i{margin-bottom:.25rem}.Newscaster__photo{cursor:pointer;width:96px;border:1px solid #000;transition:border-color .1s;-ms-interpolation-mode:nearest-neighbor}.Newscaster__photo:hover{border-color:grey}.Newscaster__photoZoom{text-align:center}.Newscaster__photoZoom>img{transform:scale(2);-ms-interpolation-mode:nearest-neighbor}.Newscaster__photoZoom>.Button{position:absolute;width:64px;left:50%;margin-left:-32px;bottom:1rem}.Newscaster__story--wanted{background-color:rgba(219,40,40,.1)}.Newscaster__story--wanted .Section__title{color:#db2828;border-bottom:2px solid #a14c49!important}.Newscaster__story:last-child{margin-bottom:.5rem}.NuclearBomb__displayBox{background-color:#002003;border:4px inset #e8e4c9;color:#03e017;font-size:24px;font-family:monospace;padding:6px}.NuclearBomb__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9}.NuclearBomb__Button--keypad:hover{background-color:#f7f6ee!important;border-color:#f7f6ee!important}.NuclearBomb__Button--1{background-color:#d3cfb7!important;border-color:#d3cfb7!important;color:#a9a692!important}.NuclearBomb__Button--E{background-color:#d9b804!important;border-color:#d9b804!important}.NuclearBomb__Button--E:hover{background-color:#f3d00e!important;border-color:#f3d00e!important}.NuclearBomb__Button--C{background-color:#bd2020!important;border-color:#bd2020!important}.NuclearBomb__Button--C:hover{background-color:#d52b2b!important;border-color:#d52b2b!important}.NuclearBomb__NTIcon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.OreRedemption__Ores .OreHeader,.OreRedemption__Ores .OreLine{min-height:32px;padding:0 .5rem}.OreRedemption__Ores .OreHeader{line-height:32px;background-color:rgba(0,0,0,.33);font-weight:700}.OreRedemption__Ores .OreLine:last-of-type{margin-bottom:.5rem}.OreRedemption__Ores .Section__content{padding:0;height:100%;overflow:auto}.PDA__footer{position:fixed;bottom:0;left:0;right:0;height:30px}.PDA__footer__button{text-align:center;padding-top:4px;padding-bottom:2px;font-size:24px}.PdaPainter__list tr>td{text-align:center}.PdaPainter__list tr{height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.PdaPainter__list tr:focus,.PdaPainter__list tr:hover{background-color:#252525}.PoolController__Buttons .Button:not(:last-child){margin-bottom:8px}.RndConsole{position:relative}.RndConsole__Overlay{position:absolute;display:flex;align-items:stretch;justify-content:stretch;top:0;left:0;width:100%;height:100vh}.RndConsole__LatheCategory__MatchingDesigns .Table__cell{padding-bottom:4px}.RndConsole__MainMenu__Buttons .Button:not(:last-child){margin-bottom:4px}.RndConsole__LatheMaterials .Table__cell:nth-child(2){padding-left:16px}.RndConsole__LatheMaterialStorage .Table__cell{padding:4px 0;border-bottom:1px solid #767676}.RndConsole__Overlay__Wrapper{display:flex;align-items:center;justify-content:stretch;flex-grow:1;padding:24px;background-color:hsla(0,0%,100%,0)}.RndConsole__Overlay__Wrapper .NoticeBox{flex-grow:1;margin-bottom:80px;font-size:18pt;padding:.3em .75em}.RndConsole__RndNavbar .Button{margin-bottom:10px}.Roulette{font-family:Palatino}.Roulette__board{display:table;width:100%;border-collapse:collapse;border:2px solid #fff;margin:0}.Roulette__board-row{padding:0;margin:0}.Roulette__board-cell{display:table-cell;padding:0;margin:0;border:2px solid #fff;font-family:Palatino}.Roulette__board-cell:first-child{padding-left:0}.Roulette__board-cell:last-child{padding-right:0}.Roulette__board-extrabutton{text-align:center;font-size:20px;font-weight:700;height:28px;border:none!important;margin:0!important;padding-top:4px!important;color:#fff!important}.Roulette__lowertable{margin-top:8px;margin-left:80px;margin-right:80px;border-collapse:collapse;border:2px solid #fff;border-spacing:0}.Roulette__lowertable--cell{border:2px solid #fff;padding:0;margin:0}.Roulette__lowertable--betscell{vertical-align:top}.Roulette__lowertable--spinresult{text-align:center;font-size:100px;font-weight:700;vertical-align:middle}.Roulette__lowertable--spinresult-black{background-color:#000}.Roulette__lowertable--spinresult-red{background-color:#db2828}.Roulette__lowertable--spinresult-green{background-color:#20b142}.Roulette__lowertable--spinbutton{margin:0!important;border:none!important;font-size:50px;line-height:60px!important;text-align:center;font-weight:700}.Roulette__lowertable--header{width:1%;text-align:center;font-size:20px;font-weight:700}.Safe--engraving{position:absolute;width:95%;height:96%;left:2.5%;top:2%;border:5px outset #3e4f6a;padding:5px;text-align:center}.Safe--engraving--arrow{color:#35435a}.Safe--engraving--hinge{content:" ";background-color:#191f2a;width:25px;height:40px;position:absolute;right:-15px;margin-top:-20px}.Safe--dialer{margin-bottom:.5rem}.Safe--dialer--number{color:#bbb;display:inline;background-color:#191f2a;font-size:1.5rem;font-weight:700;padding:0 .5rem}.Safe--dialer--right .Button i{z-index:-100}.Safe--dialer .Button{width:80px}.Safe--contents{border:10px solid #191f2a;background-color:#0f131a;height:calc(85% + 7.5px);text-align:left;padding:5px}.Safe--help{position:absolute;bottom:10px;left:5px;width:50%}.SecureStorage__displayBox{background-color:#212121;color:#8b8b8b;border:.167em inset #e8e4c9;font-size:375%;font-family:monospace;padding:.25em}.SecureStorage__displayBox--good{background-color:#002003;color:#03e017}.SecureStorage__displayBox--bad{background-color:#210000;color:#e00202}.SecureStorage__Button{outline-width:.25rem!important;border-width:.3rem!important;border:.167em outset #e8e4c9;padding-left:0!important;padding-right:0!important}.SecureStorage__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9;color:#a9a692}.SecureStorage__Button--keypad:hover{background-color:#f7f6ee;border-color:#f7f6ee;color:#a9a692}.SecureStorage__Button--E{background-color:#d9b804;border-color:#d9b804;color:#fff}.SecureStorage__Button--E:hover{background-color:#f5d317;border-color:#f5d317;color:#fff}.SecureStorage__Button--C{background-color:#bd2020;border-color:#bd2020;color:#fff}.SecureStorage__Button--C:hover{background-color:#d83434;border-color:#d83434;color:#fff}.SecurityRecords__list tr>td{text-align:center}.SecurityRecords__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.SecurityRecords__list tr:not(:first-child):focus,.SecurityRecords__list tr:not(:first-child):hover{background-color:#252525}.SecurityRecords__listRow--arrest{background-color:#740c20}.SecurityRecords__listRow--execute{background-color:#683e8c}.SecurityRecords__listRow--incarcerated{background-color:#633203}.SecurityRecords__listRow--parolled{background-color:#006d7b}.SecurityRecords__listRow--released{background-color:#1c5574}.SecurityRecords__listRow--demote{background-color:#155500}.SecurityRecords__listRow--search{background-color:#987a00}.SecurityRecords__listRow--monitor{background-color:#1f1180}.MedicalRecords__list tr>td{text-align:center}.MedicalRecords__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.MedicalRecords__list tr:not(:first-child):focus,.MedicalRecords__list tr:not(:first-child):hover{background-color:#252525}.MedicalRecords__listRow--deceased{background-color:#740c20}.MedicalRecords__listRow--ssd{background-color:#006d7b}.MedicalRecords__listRow--physically_unfit{background-color:#987a00}.MedicalRecords__listRow--disabled{background-color:#1f1180}.MedicalRecords__listMedbot--0{background-color:#2b1414}.Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Layout__content--flexRow{display:flex;flex-flow:row}.Layout__content--flexColumn{display:flex;flex-flow:column}.Layout__content--scrollable{overflow-y:auto}.Layout__content--noMargin{margin:0}.TitleBar{background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#363636;transition:color .25s,background-color .25s}.TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.TitleBar__minimize{position:absolute;top:6px;right:46px}.TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.Window{bottom:0;right:0;color:#fff;background-color:#252525;background-image:linear-gradient(180deg,#2a2a2a 0,#202020)}.Window,.Window__titleBar{position:fixed;top:0;left:0}.Window__titleBar{z-index:1;width:100%;height:32px}.Window__rest{top:32px}.Window__dimmer,.Window__rest{position:fixed;bottom:0;left:0;right:0}.Window__dimmer{top:0;background-color:rgba(62,62,62,.25);pointer-events:none}.Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#131313;color:hsla(0,0%,100%,.8)}.Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.theme-cardtable .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-cardtable .Button:last-child{margin-right:0}.theme-cardtable .Button .fa,.theme-cardtable .Button .far,.theme-cardtable .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-cardtable .Button--hasContent .fa,.theme-cardtable .Button--hasContent .far,.theme-cardtable .Button--hasContent .fas{margin-right:3px}.theme-cardtable .Button--hasContent.Button--iconRight .fa,.theme-cardtable .Button--hasContent.Button--iconRight .far,.theme-cardtable .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-cardtable .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-cardtable .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-cardtable .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-cardtable .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff}.theme-cardtable .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--default:focus,.theme-cardtable .Button--color--default:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-cardtable .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--caution:focus,.theme-cardtable .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-cardtable .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-cardtable .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--danger:focus,.theme-cardtable .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-cardtable .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff;background-color:rgba(17,112,57,0);color:hsla(0,0%,100%,.5)}.theme-cardtable .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--transparent:focus,.theme-cardtable .Button--color--transparent:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--disabled{background-color:#363636!important}.theme-cardtable .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-cardtable .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--selected:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--selected:focus,.theme-cardtable .Button--selected:hover{background-color:#b31212;color:#fff}.theme-cardtable .Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-cardtable .Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-cardtable .Input--fluid{display:block;width:auto}.theme-cardtable .Input__baseline{display:inline-block;color:transparent}.theme-cardtable .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-cardtable .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-cardtable .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .NumberInput{position:relative;display:inline-block;border:1px solid #fff;border:1px solid hsla(0,0%,100%,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-cardtable .NumberInput--fluid{display:block}.theme-cardtable .NumberInput__content{margin-left:6px}.theme-cardtable .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-cardtable .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #fff;background-color:#fff}.theme-cardtable .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-cardtable .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-cardtable .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-cardtable .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-cardtable .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-cardtable .ProgressBar--color--default{border:1px solid #000}.theme-cardtable .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-cardtable .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Section:last-child{margin-bottom:0}.theme-cardtable .Section--flex{display:flex;flex-flow:column}.theme-cardtable .Section--flex .Section__content{overflow:auto;flex:1}.theme-cardtable .Section__title{padding:6px;border-bottom:2px solid #000}.theme-cardtable .Section__titleText{font-size:14px;font-weight:700}.theme-cardtable .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-cardtable .Section__content{padding:8px 6px}.theme-cardtable .Section__content--noTopPadding{padding-top:0}.theme-cardtable .Section__content--stretchContents{height:100%}.theme-cardtable .Section--level--1 .Section__titleText{font-size:14px}.theme-cardtable .Section--level--2 .Section__titleText{font-size:13px}.theme-cardtable .Section--level--3 .Section__titleText{font-size:12px}.theme-cardtable .Section--level--2,.theme-cardtable .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-cardtable .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Layout__content--flexRow{display:flex;flex-flow:row}.theme-cardtable .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-cardtable .Layout__content--scrollable{overflow-y:auto}.theme-cardtable .Layout__content--noMargin{margin:0}.theme-cardtable .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#117039;background-image:linear-gradient(180deg,#117039 0,#117039)}.theme-cardtable .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-cardtable .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-cardtable .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(39,148,85,.25);pointer-events:none}.theme-cardtable .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#09381d;color:hsla(0,0%,100%,.8)}.theme-cardtable .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-cardtable .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-cardtable .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-cardtable .TitleBar{background-color:#381608;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-cardtable .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#381608;transition:color .25s,background-color .25s}.theme-cardtable .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-cardtable .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-cardtable .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-cardtable .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-cardtable .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-cardtable .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-cardtable .Button{border:2px solid #fff}.theme-changeling .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-changeling .Button:last-child{margin-right:0}.theme-changeling .Button .fa,.theme-changeling .Button .far,.theme-changeling .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-changeling .Button--hasContent .fa,.theme-changeling .Button--hasContent .far,.theme-changeling .Button--hasContent .fas{margin-right:3px}.theme-changeling .Button--hasContent.Button--iconRight .fa,.theme-changeling .Button--hasContent.Button--iconRight .far,.theme-changeling .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-changeling .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-changeling .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-changeling .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-changeling .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#563d6b;color:#fff}.theme-changeling .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--default:focus,.theme-changeling .Button--color--default:hover{background-color:#664b7d;color:#fff}.theme-changeling .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-changeling .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--caution:focus,.theme-changeling .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-changeling .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-changeling .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--danger:focus,.theme-changeling .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-changeling .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2e2633;color:#fff;background-color:rgba(46,38,51,0);color:hsla(0,0%,100%,.5)}.theme-changeling .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--transparent:focus,.theme-changeling .Button--color--transparent:hover{background-color:#3b3341;color:#fff}.theme-changeling .Button--disabled{background-color:#999!important}.theme-changeling .Button--selected{transition:color 50ms,background-color 50ms;background-color:#188552;color:#fff}.theme-changeling .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--selected:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--selected:focus,.theme-changeling .Button--selected:hover{background-color:#249962;color:#fff}.theme-changeling .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#231d26;scrollbar-face-color:#44384b;scrollbar-3dlight-color:#2e2633;scrollbar-highlight-color:#2e2633;scrollbar-track-color:#231d26;scrollbar-arrow-color:#9986a5;scrollbar-shadow-color:#44384b}.theme-changeling .Section:last-child{margin-bottom:0}.theme-changeling .Section--flex{display:flex;flex-flow:column}.theme-changeling .Section--flex .Section__content{overflow:auto;flex:1}.theme-changeling .Section__title{padding:6px;border-bottom:2px solid #563d6b}.theme-changeling .Section__titleText{font-size:14px;font-weight:700}.theme-changeling .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-changeling .Section__content{padding:8px 6px}.theme-changeling .Section__content--noTopPadding{padding-top:0}.theme-changeling .Section__content--stretchContents{height:100%}.theme-changeling .Section--level--1 .Section__titleText{font-size:14px}.theme-changeling .Section--level--2 .Section__titleText{font-size:13px}.theme-changeling .Section--level--3 .Section__titleText{font-size:12px}.theme-changeling .Section--level--2,.theme-changeling .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-changeling .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#231d26;scrollbar-face-color:#44384b;scrollbar-3dlight-color:#2e2633;scrollbar-highlight-color:#2e2633;scrollbar-track-color:#231d26;scrollbar-arrow-color:#9986a5;scrollbar-shadow-color:#44384b}.theme-changeling .Layout__content--flexRow{display:flex;flex-flow:row}.theme-changeling .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-changeling .Layout__content--scrollable{overflow-y:auto}.theme-changeling .Layout__content--noMargin{margin:0}.theme-changeling .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2e2633;background-image:linear-gradient(180deg,#3e3345 0,#1e1921)}.theme-changeling .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-changeling .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-changeling .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(72,63,78,.25);pointer-events:none}.theme-changeling .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#17131a;color:hsla(0,0%,100%,.8)}.theme-changeling .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-changeling .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-changeling .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-changeling .TitleBar{background-color:#352d3b;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-changeling .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#352d3b;transition:color .25s,background-color .25s}.theme-changeling .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-changeling .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-changeling .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-changeling .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-changeling .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-changeling .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-changeling .Layout__content{background-image:none}.theme-hackerman .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-hackerman .Button:last-child{margin-right:0}.theme-hackerman .Button .fa,.theme-hackerman .Button .far,.theme-hackerman .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-hackerman .Button--hasContent .fa,.theme-hackerman .Button--hasContent .far,.theme-hackerman .Button--hasContent .fas{margin-right:3px}.theme-hackerman .Button--hasContent.Button--iconRight .fa,.theme-hackerman .Button--hasContent.Button--iconRight .far,.theme-hackerman .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-hackerman .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-hackerman .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-hackerman .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-hackerman .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--default:focus,.theme-hackerman .Button--color--default:hover{background-color:#26ff26;color:#000}.theme-hackerman .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-hackerman .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--caution:focus,.theme-hackerman .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-hackerman .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-hackerman .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--danger:focus,.theme-hackerman .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-hackerman .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#121b12;color:#fff;background-color:rgba(18,27,18,0);color:hsla(0,0%,100%,.5)}.theme-hackerman .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--transparent:focus,.theme-hackerman .Button--color--transparent:hover{background-color:#1d271d;color:#fff}.theme-hackerman .Button--disabled{background-color:#4a6a4a!important}.theme-hackerman .Button--selected{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--selected:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--selected:focus,.theme-hackerman .Button--selected:hover{background-color:#26ff26;color:#000}.theme-hackerman .Input{position:relative;display:inline-block;width:120px;border:1px solid #0f0;border:1px solid rgba(0,255,0,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-hackerman .Input--disabled{color:#777;border-color:#404040;border-color:rgba(64,64,64,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-hackerman .Input--fluid{display:block;width:auto}.theme-hackerman .Input__baseline{display:inline-block;color:transparent}.theme-hackerman .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-hackerman .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-hackerman .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Modal{background-color:#121b12;max-width:calc(100% - 1rem);padding:1rem}.theme-hackerman .Modal,.theme-hackerman .Section{scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-hackerman .Section:last-child{margin-bottom:0}.theme-hackerman .Section--flex{display:flex;flex-flow:column}.theme-hackerman .Section--flex .Section__content{overflow:auto;flex:1}.theme-hackerman .Section__title{padding:6px;border-bottom:2px solid #0f0}.theme-hackerman .Section__titleText{font-size:14px;font-weight:700}.theme-hackerman .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-hackerman .Section__content{padding:8px 6px}.theme-hackerman .Section__content--noTopPadding{padding-top:0}.theme-hackerman .Section__content--stretchContents{height:100%}.theme-hackerman .Section--level--1 .Section__titleText{font-size:14px}.theme-hackerman .Section--level--2 .Section__titleText{font-size:13px}.theme-hackerman .Section--level--3 .Section__titleText{font-size:12px}.theme-hackerman .Section--level--2,.theme-hackerman .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-hackerman .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Layout__content--flexRow{display:flex;flex-flow:row}.theme-hackerman .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-hackerman .Layout__content--scrollable{overflow-y:auto}.theme-hackerman .Layout__content--noMargin{margin:0}.theme-hackerman .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#121b12;background-image:linear-gradient(180deg,#121b12 0,#121b12)}.theme-hackerman .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-hackerman .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-hackerman .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(40,50,40,.25);pointer-events:none}.theme-hackerman .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#090e09;color:hsla(0,0%,100%,.8)}.theme-hackerman .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-hackerman .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-hackerman .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-hackerman .TitleBar{background-color:#223d22;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-hackerman .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#223d22;transition:color .25s,background-color .25s}.theme-hackerman .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-hackerman .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-hackerman .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-hackerman .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-hackerman .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-hackerman .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-hackerman .Layout__content{background-image:none}.theme-hackerman .Button{font-family:monospace;border:2px outset #0a0;outline:1px solid #007a00}.theme-hackerman .candystripe:nth-child(odd){background-color:rgba(0,100,0,.5)}.theme-abductor .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-abductor .Button:last-child{margin-right:0}.theme-abductor .Button .fa,.theme-abductor .Button .far,.theme-abductor .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-abductor .Button--hasContent .fa,.theme-abductor .Button--hasContent .far,.theme-abductor .Button--hasContent .fas{margin-right:3px}.theme-abductor .Button--hasContent.Button--iconRight .fa,.theme-abductor .Button--hasContent.Button--iconRight .far,.theme-abductor .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-abductor .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-abductor .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-abductor .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-abductor .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#ad2350;color:#fff}.theme-abductor .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--default:focus,.theme-abductor .Button--color--default:hover{background-color:#c42f60;color:#fff}.theme-abductor .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-abductor .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--caution:focus,.theme-abductor .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-abductor .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-abductor .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--danger:focus,.theme-abductor .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-abductor .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2a314a;color:#fff;background-color:rgba(42,49,74,0);color:hsla(0,0%,100%,.5)}.theme-abductor .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--transparent:focus,.theme-abductor .Button--color--transparent:hover{background-color:#373e59;color:#fff}.theme-abductor .Button--disabled{background-color:#363636!important}.theme-abductor .Button--selected{transition:color 50ms,background-color 50ms;background-color:#465899;color:#fff}.theme-abductor .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--selected:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--selected:focus,.theme-abductor .Button--selected:hover{background-color:#5569ad;color:#fff}.theme-abductor .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#a82d55;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-abductor .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-abductor .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-abductor .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-abductor .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-abductor .Input{position:relative;display:inline-block;width:120px;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-abductor .Input--disabled{color:#777;border-color:#171717;border-color:hsla(0,0%,9%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-abductor .Input--fluid{display:block;width:auto}.theme-abductor .Input__baseline{display:inline-block;color:transparent}.theme-abductor .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-abductor .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-abductor .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .NumberInput{position:relative;display:inline-block;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#404b6e;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-abductor .NumberInput--fluid{display:block}.theme-abductor .NumberInput__content{margin-left:6px}.theme-abductor .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-abductor .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #404b6e;background-color:#404b6e}.theme-abductor .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-abductor .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-abductor .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-abductor .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-abductor .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-abductor .ProgressBar--color--default{border:1px solid #931e44}.theme-abductor .ProgressBar--color--default .ProgressBar__fill{background-color:#931e44}.theme-abductor .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Section:last-child{margin-bottom:0}.theme-abductor .Section--flex{display:flex;flex-flow:column}.theme-abductor .Section--flex .Section__content{overflow:auto;flex:1}.theme-abductor .Section__title{padding:6px;border-bottom:2px solid #ad2350}.theme-abductor .Section__titleText{font-size:14px;font-weight:700}.theme-abductor .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-abductor .Section__content{padding:8px 6px}.theme-abductor .Section__content--noTopPadding{padding-top:0}.theme-abductor .Section__content--stretchContents{height:100%}.theme-abductor .Section--level--1 .Section__titleText{font-size:14px}.theme-abductor .Section--level--2 .Section__titleText{font-size:13px}.theme-abductor .Section--level--3 .Section__titleText{font-size:12px}.theme-abductor .Section--level--2,.theme-abductor .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-abductor .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-abductor .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#a82d55;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-abductor .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-abductor .Tooltip--long:after{width:250px;white-space:normal}.theme-abductor .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-abductor .Tooltip--left:hover:after,.theme-abductor .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-abductor .Tooltip--right:after{top:50%;left:100%}.theme-abductor .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-abductor .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Layout__content--flexRow{display:flex;flex-flow:row}.theme-abductor .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-abductor .Layout__content--scrollable{overflow-y:auto}.theme-abductor .Layout__content--noMargin{margin:0}.theme-abductor .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2a314a;background-image:linear-gradient(180deg,#353e5e 0,#1f2436)}.theme-abductor .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-abductor .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-abductor .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(68,76,104,.25);pointer-events:none}.theme-abductor .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#151925;color:hsla(0,0%,100%,.8)}.theme-abductor .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-abductor .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-abductor .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-abductor .TitleBar{background-color:#9e1b46;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-abductor .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#9e1b46;transition:color .25s,background-color .25s}.theme-abductor .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-abductor .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-abductor .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-abductor .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-abductor .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-abductor .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-abductor .Layout__content{background-image:none}.theme-malfunction .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-malfunction .Button:last-child{margin-right:0}.theme-malfunction .Button .fa,.theme-malfunction .Button .far,.theme-malfunction .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-malfunction .Button--hasContent .fa,.theme-malfunction .Button--hasContent .far,.theme-malfunction .Button--hasContent .fas{margin-right:3px}.theme-malfunction .Button--hasContent.Button--iconRight .fa,.theme-malfunction .Button--hasContent.Button--iconRight .far,.theme-malfunction .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-malfunction .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-malfunction .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-malfunction .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-malfunction .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#910101;color:#fff}.theme-malfunction .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--default:focus,.theme-malfunction .Button--color--default:hover{background-color:#a60b0b;color:#fff}.theme-malfunction .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-malfunction .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--caution:focus,.theme-malfunction .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-malfunction .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-malfunction .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--danger:focus,.theme-malfunction .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-malfunction .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1b3443;color:#fff;background-color:rgba(27,52,67,0);color:hsla(0,0%,100%,.5)}.theme-malfunction .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--transparent:focus,.theme-malfunction .Button--color--transparent:hover{background-color:#274252;color:#fff}.theme-malfunction .Button--disabled{background-color:#363636!important}.theme-malfunction .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1e5881;color:#fff}.theme-malfunction .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--selected:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--selected:focus,.theme-malfunction .Button--selected:hover{background-color:#2a6894;color:#fff}.theme-malfunction .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#1a3f57;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-malfunction .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-malfunction .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-malfunction .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-malfunction .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-malfunction .Input{position:relative;display:inline-block;width:120px;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-malfunction .Input--disabled{color:#777;border-color:#090909;border-color:rgba(9,9,9,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-malfunction .Input--fluid{display:block;width:auto}.theme-malfunction .Input__baseline{display:inline-block;color:transparent}.theme-malfunction .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-malfunction .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-malfunction .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .NumberInput{position:relative;display:inline-block;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#910101;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-malfunction .NumberInput--fluid{display:block}.theme-malfunction .NumberInput__content{margin-left:6px}.theme-malfunction .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-malfunction .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #910101;background-color:#910101}.theme-malfunction .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-malfunction .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-malfunction .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-malfunction .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-malfunction .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-malfunction .ProgressBar--color--default{border:1px solid #7b0101}.theme-malfunction .ProgressBar--color--default .ProgressBar__fill{background-color:#7b0101}.theme-malfunction .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Section:last-child{margin-bottom:0}.theme-malfunction .Section--flex{display:flex;flex-flow:column}.theme-malfunction .Section--flex .Section__content{overflow:auto;flex:1}.theme-malfunction .Section__title{padding:6px;border-bottom:2px solid #910101}.theme-malfunction .Section__titleText{font-size:14px;font-weight:700}.theme-malfunction .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-malfunction .Section__content{padding:8px 6px}.theme-malfunction .Section__content--noTopPadding{padding-top:0}.theme-malfunction .Section__content--stretchContents{height:100%}.theme-malfunction .Section--level--1 .Section__titleText{font-size:14px}.theme-malfunction .Section--level--2 .Section__titleText{font-size:13px}.theme-malfunction .Section--level--3 .Section__titleText{font-size:12px}.theme-malfunction .Section--level--2,.theme-malfunction .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-malfunction .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-malfunction .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#235577;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-malfunction .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-malfunction .Tooltip--long:after{width:250px;white-space:normal}.theme-malfunction .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-malfunction .Tooltip--left:hover:after,.theme-malfunction .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-malfunction .Tooltip--right:after{top:50%;left:100%}.theme-malfunction .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-malfunction .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Layout__content--flexRow{display:flex;flex-flow:row}.theme-malfunction .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-malfunction .Layout__content--scrollable{overflow-y:auto}.theme-malfunction .Layout__content--noMargin{margin:0}.theme-malfunction .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1b3443;background-image:linear-gradient(180deg,#244559 0,#12232d)}.theme-malfunction .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-malfunction .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-malfunction .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(50,79,96,.25);pointer-events:none}.theme-malfunction .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0e1a22;color:hsla(0,0%,100%,.8)}.theme-malfunction .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-malfunction .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-malfunction .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-malfunction .TitleBar{background-color:#1a3f57;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-malfunction .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#1a3f57;transition:color .25s,background-color .25s}.theme-malfunction .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-malfunction .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-malfunction .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-malfunction .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-malfunction .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-malfunction .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-malfunction .Layout__content{background-image:none}.theme-ntos .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-ntos .Button:last-child{margin-right:0}.theme-ntos .Button .fa,.theme-ntos .Button .far,.theme-ntos .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-ntos .Button--hasContent .fa,.theme-ntos .Button--hasContent .far,.theme-ntos .Button--hasContent .fas{margin-right:3px}.theme-ntos .Button--hasContent.Button--iconRight .fa,.theme-ntos .Button--hasContent.Button--iconRight .far,.theme-ntos .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-ntos .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-ntos .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-ntos .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-ntos .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#384e68;color:#fff}.theme-ntos .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--default:focus,.theme-ntos .Button--color--default:hover{background-color:#465e7a;color:#fff}.theme-ntos .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-ntos .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--caution:focus,.theme-ntos .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-ntos .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-ntos .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--danger:focus,.theme-ntos .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-ntos .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1f2b39;color:#fff;background-color:rgba(31,43,57,0);color:rgba(227,240,255,.75)}.theme-ntos .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--transparent:focus,.theme-ntos .Button--color--transparent:hover{background-color:#2b3847;color:#fff}.theme-ntos .Button--disabled{background-color:#999!important}.theme-ntos .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-ntos .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--selected:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--selected:focus,.theme-ntos .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-ntos .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-ntos .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-ntos .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-ntos .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-ntos .ProgressBar--color--default{border:1px solid #384e68}.theme-ntos .ProgressBar--color--default .ProgressBar__fill{background-color:#384e68}.theme-ntos .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Section:last-child{margin-bottom:0}.theme-ntos .Section--flex{display:flex;flex-flow:column}.theme-ntos .Section--flex .Section__content{overflow:auto;flex:1}.theme-ntos .Section__title{padding:6px;border-bottom:2px solid #4972a1}.theme-ntos .Section__titleText{font-size:14px;font-weight:700}.theme-ntos .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-ntos .Section__content{padding:8px 6px}.theme-ntos .Section__content--noTopPadding{padding-top:0}.theme-ntos .Section__content--stretchContents{height:100%}.theme-ntos .Section--level--1 .Section__titleText{font-size:14px}.theme-ntos .Section--level--2 .Section__titleText{font-size:13px}.theme-ntos .Section--level--3 .Section__titleText{font-size:12px}.theme-ntos .Section--level--2,.theme-ntos .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-ntos .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Layout__content--flexRow{display:flex;flex-flow:row}.theme-ntos .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-ntos .Layout__content--scrollable{overflow-y:auto}.theme-ntos .Layout__content--noMargin{margin:0}.theme-ntos .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1f2b39;background-image:linear-gradient(180deg,#223040 0,#1b2633)}.theme-ntos .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-ntos .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-ntos .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(55,69,85,.25);pointer-events:none}.theme-ntos .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0f151d;color:hsla(0,0%,100%,.8)}.theme-ntos .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-ntos .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-ntos .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-ntos .TitleBar{background-color:#2a3b4e;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-ntos .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#2a3b4e;transition:color .25s,background-color .25s}.theme-ntos .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-ntos .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-ntos .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-ntos .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-ntos .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-ntos .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-retro .Button:last-child{margin-right:0}.theme-retro .Button .fa,.theme-retro .Button .far,.theme-retro .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-retro .Button--hasContent .fa,.theme-retro .Button--hasContent .far,.theme-retro .Button--hasContent .fas{margin-right:3px}.theme-retro .Button--hasContent.Button--iconRight .fa,.theme-retro .Button--hasContent.Button--iconRight .far,.theme-retro .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-retro .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-retro .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-retro .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-retro .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-retro .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--default:focus,.theme-retro .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-retro .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--caution:focus,.theme-retro .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-retro .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-retro .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--danger:focus,.theme-retro .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-retro .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000;background-color:rgba(232,228,201,0);color:hsla(0,0%,100%,.5)}.theme-retro .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--transparent:focus,.theme-retro .Button--color--transparent:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--disabled{background-color:#363636!important}.theme-retro .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-retro .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--selected:focus{transition:color .1s,background-color .1s}.theme-retro .Button--selected:focus,.theme-retro .Button--selected:hover{background-color:#b31212;color:#fff}.theme-retro .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-retro .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-retro .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-retro .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-retro .ProgressBar--color--default{border:1px solid #000}.theme-retro .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-retro .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Section:last-child{margin-bottom:0}.theme-retro .Section--flex{display:flex;flex-flow:column}.theme-retro .Section--flex .Section__content{overflow:auto;flex:1}.theme-retro .Section__title{padding:6px;border-bottom:2px solid #000}.theme-retro .Section__titleText{font-size:14px;font-weight:700}.theme-retro .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-retro .Section__content{padding:8px 6px}.theme-retro .Section__content--noTopPadding{padding-top:0}.theme-retro .Section__content--stretchContents{height:100%}.theme-retro .Section--level--1 .Section__titleText{font-size:14px}.theme-retro .Section--level--2 .Section__titleText{font-size:13px}.theme-retro .Section--level--3 .Section__titleText{font-size:12px}.theme-retro .Section--level--2,.theme-retro .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-retro .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Layout__content--flexRow{display:flex;flex-flow:row}.theme-retro .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-retro .Layout__content--scrollable{overflow-y:auto}.theme-retro .Layout__content--noMargin{margin:0}.theme-retro .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#e8e4c9 0,#e8e4c9)}.theme-retro .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-retro .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-retro .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-retro .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-retro .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-retro .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-retro .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-retro .TitleBar{background-color:#585337;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-retro .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#585337;transition:color .25s,background-color .25s}.theme-retro .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-retro .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-retro .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-retro .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-retro .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-retro .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .Button{font-family:monospace;color:#161613;border:8px outset #e8e4c9;outline:3px solid #161613}.theme-retro .Layout__content{background-image:none}.theme-safe .Section{position:relative;margin-bottom:6px;background-color:#c4c195;background-color:#b2ae74;box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1a202c;scrollbar-face-color:#313f54;scrollbar-3dlight-color:#222b3a;scrollbar-highlight-color:#222b3a;scrollbar-track-color:#1a202c;scrollbar-arrow-color:#7b90b2;scrollbar-shadow-color:#313f54}.theme-safe .Section:last-child{margin-bottom:0}.theme-safe .Section--flex{display:flex;flex-flow:column}.theme-safe .Section--flex .Section__content{overflow:auto;flex:1}.theme-safe .Section__title{padding:6px;border-bottom:2px solid #3d566b}.theme-safe .Section__titleText{font-size:14px;font-weight:700}.theme-safe .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-safe .Section__content{padding:8px 6px}.theme-safe .Section__content--noTopPadding{padding-top:0}.theme-safe .Section__content--stretchContents{height:100%}.theme-safe .Section--level--1 .Section__titleText{font-size:14px}.theme-safe .Section--level--2 .Section__titleText{font-size:13px}.theme-safe .Section--level--3 .Section__titleText{font-size:12px}.theme-safe .Section--level--2,.theme-safe .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-safe .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#222b3a;background-image:linear-gradient(180deg,#242d3d 0,#202937)}.theme-safe .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-safe .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-safe .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(58,69,86,.25);pointer-events:none}.theme-safe .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#11161d;color:hsla(0,0%,100%,.8)}.theme-safe .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-safe .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-safe .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-safe .TitleBar{background-color:#35435a;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-safe .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#35435a;transition:color .25s,background-color .25s}.theme-safe .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-safe .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-safe .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-safe .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-safe .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-safe .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-safe .Safe--engraving{position:absolute;width:95%;height:96%;left:2.5%;top:2%;border:5px outset #3e4f6a;padding:5px;text-align:center}.theme-safe .Safe--engraving--arrow{color:#35435a}.theme-safe .Safe--engraving--hinge{content:" ";background-color:#191f2a;width:25px;height:40px;position:absolute;right:-15px;margin-top:-20px}.theme-safe .Safe--dialer{margin-bottom:.5rem}.theme-safe .Safe--dialer--number{color:#bbb;display:inline;background-color:#191f2a;font-size:1.5rem;font-weight:700;padding:0 .5rem}.theme-safe .Safe--dialer--right .Button i{z-index:-100}.theme-safe .Safe--dialer .Button{width:80px}.theme-safe .Safe--contents{border:10px solid #191f2a;background-color:#0f131a;height:calc(85% + 7.5px);text-align:left;padding:5px}.theme-safe .Safe--help{position:absolute;bottom:10px;left:5px;width:50%}.theme-safe .Layout__content{background-image:none}.theme-safe .Section{font-family:Comic Sans MS,cursive,sans-serif;font-style:italic;color:#000;box-shadow:5px 5px #111;background-image:linear-gradient(180deg,#b2ae74 0,#8e8b5d);transform:rotate(-1deg)}.theme-safe .Section__title{padding-bottom:0;border:0}.theme-safe .Section:before{content:" ";display:block;width:24px;height:40px;background-image:linear-gradient(180deg,transparent 0,#fff);box-shadow:1px 1px #111;opacity:.2;position:absolute;top:-30px;left:calc(50% - 12px);transform:rotate(-5deg)}.theme-securestorage .TitleBar{background-color:#e8e4c9;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-securestorage .TitleBar__clickable{color:rgba(25,25,22,.5);background-color:#e8e4c9;transition:color .25s,background-color .25s}.theme-securestorage .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-securestorage .TitleBar__title{position:absolute;top:0;left:46px;color:#191916;font-size:14px;line-height:31px;white-space:nowrap}.theme-securestorage .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-securestorage .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-securestorage .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-securestorage .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-securestorage .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-securestorage .Layout__content--flexRow{display:flex;flex-flow:row}.theme-securestorage .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-securestorage .Layout__content--scrollable{overflow-y:auto}.theme-securestorage .Layout__content--noMargin{margin:0}.theme-securestorage .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#f1efde 0,#dfd9b4)}.theme-securestorage .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-securestorage .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-securestorage .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-securestorage .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-securestorage .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-securestorage .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-securestorage .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-securestorage .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-securestorage .Section:last-child{margin-bottom:0}.theme-securestorage .Section--flex{display:flex;flex-flow:column}.theme-securestorage .Section--flex .Section__content{overflow:auto;flex:1}.theme-securestorage .Section__title{padding:6px;border-bottom:2px solid #397439}.theme-securestorage .Section__titleText{font-size:14px;font-weight:700}.theme-securestorage .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-securestorage .Section__content{padding:8px 6px}.theme-securestorage .Section__content--noTopPadding{padding-top:0}.theme-securestorage .Section__content--stretchContents{height:100%}.theme-securestorage .Section--level--1 .Section__titleText{font-size:14px}.theme-securestorage .Section--level--2 .Section__titleText{font-size:13px}.theme-securestorage .Section--level--3 .Section__titleText{font-size:12px}.theme-securestorage .Section--level--2,.theme-securestorage .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-securestorage .Layout__content{background-image:none}.theme-security .color-label{color:#ab8784!important}.theme-security .color-bg-good{background-color:#4d9121!important}.theme-security .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-security .Button:last-child{margin-right:0}.theme-security .Button .fa,.theme-security .Button .far,.theme-security .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-security .Button--hasContent .fa,.theme-security .Button--hasContent .far,.theme-security .Button--hasContent .fas{margin-right:3px}.theme-security .Button--hasContent.Button--iconRight .fa,.theme-security .Button--hasContent.Button--iconRight .far,.theme-security .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-security .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-security .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-security .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-security .Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.theme-security .Button--color--good:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--good:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--good:focus,.theme-security .Button--color--good:hover{background-color:#5da52d;color:#fff}.theme-security .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#a14c49;color:#fff}.theme-security .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--default:focus,.theme-security .Button--color--default:hover{background-color:#b35f5c;color:#fff}.theme-security .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-security .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--caution:focus,.theme-security .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-security .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-security .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--danger:focus,.theme-security .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-security .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.theme-security .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--transparent:focus,.theme-security .Button--color--transparent:hover{background-color:#323232;color:#fff}.theme-security .Button--disabled{background-color:#999!important}.theme-security .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-security .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--selected:focus{transition:color .1s,background-color .1s}.theme-security .Button--selected:focus,.theme-security .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-security .Input{position:relative;display:inline-block;width:120px;border:1px solid #ff8d88;border:1px solid rgba(255,141,136,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-security .Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-security .Input--fluid{display:block;width:auto}.theme-security .Input__baseline{display:inline-block;color:transparent}.theme-security .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-security .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-security .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-security .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-security .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-security .NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.theme-security .NoticeBox--type--info{color:#fff;background-color:#822329}.theme-security .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-security .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-security .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-security .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.theme-security .Section:last-child{margin-bottom:0}.theme-security .Section--flex{display:flex;flex-flow:column}.theme-security .Section--flex .Section__content{overflow:auto;flex:1}.theme-security .Section__title{padding:6px;border-bottom:2px solid #a14c49}.theme-security .Section__titleText{font-size:14px;font-weight:700}.theme-security .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-security .Section__content{padding:8px 6px}.theme-security .Section__content--noTopPadding{padding-top:0}.theme-security .Section__content--stretchContents{height:100%}.theme-security .Section--level--1 .Section__titleText{font-size:14px}.theme-security .Section--level--2 .Section__titleText{font-size:13px}.theme-security .Section--level--3 .Section__titleText{font-size:12px}.theme-security .Section--level--2,.theme-security .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-security .Newscaster__menu{width:40px;height:100%;margin-right:.5rem;flex-basis:content}.theme-security .Newscaster__menu .Section__content{padding-left:0}.theme-security .Newscaster__menuButton{color:#767676;cursor:pointer;position:relative;margin-left:6px;margin-right:1rem;white-space:nowrap;transition:color .1s}.theme-security .Newscaster__menuButton--title{width:80%;display:none;overflow:hidden;text-overflow:ellipsis}.theme-security .Newscaster__menuButton--unread{background-color:#e45e5e;color:#fff;font-size:10px;text-align:center;border-radius:32px;display:inline-block;width:12px;position:absolute;left:16px;margin-top:14px}.theme-security .Newscaster__menuButton--selected{color:#fff}.theme-security .Newscaster__menuButton--selected:after{content:"";background-color:#a14c49;width:2px;height:24px;position:absolute;left:-6px}.theme-security .Newscaster__menuButton--security{color:#a14c49}.theme-security .Newscaster__menuButton i{width:30px;text-align:center;vertical-align:middle;margin-left:-1px;margin-right:.5rem;margin-top:1px}.theme-security .Newscaster__menuButton:hover{color:#fff}.theme-security .Newscaster__menuButton:hover:before{background-color:#fff}.theme-security .Newscaster__menuButton:not(:last-of-type){margin-bottom:.5rem}.theme-security .Newscaster__menu--open{width:175px}.theme-security .Newscaster__menu--open .Newscaster__menuButton--title{display:inline-block}.theme-security .Newscaster__jobCategory--security .Section__title{color:#a14c49;border-bottom:2px solid #a14c49!important}.theme-security .Newscaster__jobCategory--engineering .Section__title{color:#a17849;border-bottom:2px solid #a17849!important}.theme-security .Newscaster__jobCategory--medical .Section__title{color:#499ea1;border-bottom:2px solid #499ea1!important}.theme-security .Newscaster__jobCategory--science .Section__title{color:#a14972;border-bottom:2px solid #a14972!important}.theme-security .Newscaster__jobCategory--service .Section__title{color:#a1499e;border-bottom:2px solid #a1499e!important}.theme-security .Newscaster__jobCategory--supply .Section__title{color:#9ea149;border-bottom:2px solid #9ea149!important}.theme-security .Newscaster__jobCategory:last-child{margin-bottom:.5rem}.theme-security .Newscaster__jobOpening--command{font-weight:700}.theme-security .Newscaster__jobOpening:not(:last-child){margin-bottom:.5rem}.theme-security .Newscaster__emptyNotice{color:#a7817e;text-align:center;position:absolute;top:50%;left:50%;transform:translateY(-50%) translateX(-50%)}.theme-security .Newscaster__emptyNotice i{margin-bottom:.25rem}.theme-security .Newscaster__photo{cursor:pointer;width:96px;border:1px solid #000;transition:border-color .1s;-ms-interpolation-mode:nearest-neighbor}.theme-security .Newscaster__photo:hover{border-color:grey}.theme-security .Newscaster__photoZoom{text-align:center}.theme-security .Newscaster__photoZoom>img{transform:scale(2);-ms-interpolation-mode:nearest-neighbor}.theme-security .Newscaster__photoZoom>.Button{position:absolute;width:64px;left:50%;margin-left:-32px;bottom:1rem}.theme-security .Newscaster__story--wanted{background-color:rgba(219,40,40,.1)}.theme-security .Newscaster__story--wanted .Section__title{color:#db2828;border-bottom:2px solid #a14c49!important}.theme-security .Newscaster__story:last-child{margin-bottom:.5rem}.theme-syndicate .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-syndicate .Button:last-child{margin-right:0}.theme-syndicate .Button .fa,.theme-syndicate .Button .far,.theme-syndicate .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-syndicate .Button--hasContent .fa,.theme-syndicate .Button--hasContent .far,.theme-syndicate .Button--hasContent .fas{margin-right:3px}.theme-syndicate .Button--hasContent.Button--iconRight .fa,.theme-syndicate .Button--hasContent.Button--iconRight .far,.theme-syndicate .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-syndicate .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-syndicate .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-syndicate .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-syndicate .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#397439;color:#fff}.theme-syndicate .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--default:focus,.theme-syndicate .Button--color--default:hover{background-color:#478647;color:#fff}.theme-syndicate .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-syndicate .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--caution:focus,.theme-syndicate .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-syndicate .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-syndicate .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--danger:focus,.theme-syndicate .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-syndicate .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#550202;color:#fff;background-color:rgba(85,2,2,0);color:hsla(0,0%,100%,.5)}.theme-syndicate .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--transparent:focus,.theme-syndicate .Button--color--transparent:hover{background-color:#650c0c;color:#fff}.theme-syndicate .Button--disabled{background-color:#363636!important}.theme-syndicate .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-syndicate .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--selected:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--selected:focus,.theme-syndicate .Button--selected:hover{background-color:#b31212;color:#fff}.theme-syndicate .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#910101;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-syndicate .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-syndicate .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-syndicate .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-syndicate .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-syndicate .Input{position:relative;display:inline-block;width:120px;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-syndicate .Input--disabled{color:#777;border-color:#6b6b6b;border-color:hsla(0,0%,42%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-syndicate .Input--fluid{display:block;width:auto}.theme-syndicate .Input__baseline{display:inline-block;color:transparent}.theme-syndicate .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-syndicate .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-syndicate .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .NumberInput{position:relative;display:inline-block;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#87ce87;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-syndicate .NumberInput--fluid{display:block}.theme-syndicate .NumberInput__content{margin-left:6px}.theme-syndicate .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-syndicate .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #87ce87;background-color:#87ce87}.theme-syndicate .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-syndicate .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-syndicate .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-syndicate .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-syndicate .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-syndicate .ProgressBar--color--default{border:1px solid #306330}.theme-syndicate .ProgressBar--color--default .ProgressBar__fill{background-color:#306330}.theme-syndicate .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Section:last-child{margin-bottom:0}.theme-syndicate .Section--flex{display:flex;flex-flow:column}.theme-syndicate .Section--flex .Section__content{overflow:auto;flex:1}.theme-syndicate .Section__title{padding:6px;border-bottom:2px solid #397439}.theme-syndicate .Section__titleText{font-size:14px;font-weight:700}.theme-syndicate .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-syndicate .Section__content{padding:8px 6px}.theme-syndicate .Section__content--noTopPadding{padding-top:0}.theme-syndicate .Section__content--stretchContents{height:100%}.theme-syndicate .Section--level--1 .Section__titleText{font-size:14px}.theme-syndicate .Section--level--2 .Section__titleText{font-size:13px}.theme-syndicate .Section--level--3 .Section__titleText{font-size:12px}.theme-syndicate .Section--level--2,.theme-syndicate .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-syndicate .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-syndicate .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#4a0202;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-syndicate .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-syndicate .Tooltip--long:after{width:250px;white-space:normal}.theme-syndicate .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-syndicate .Tooltip--left:hover:after,.theme-syndicate .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-syndicate .Tooltip--right:after{top:50%;left:100%}.theme-syndicate .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-syndicate .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Layout__content--flexRow{display:flex;flex-flow:row}.theme-syndicate .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-syndicate .Layout__content--scrollable{overflow-y:auto}.theme-syndicate .Layout__content--noMargin{margin:0}.theme-syndicate .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#550202;background-image:linear-gradient(180deg,#730303 0,#370101)}.theme-syndicate .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-syndicate .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-syndicate .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(117,22,22,.25);pointer-events:none}.theme-syndicate .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#2b0101;color:hsla(0,0%,100%,.8)}.theme-syndicate .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-syndicate .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-syndicate .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-syndicate .TitleBar{background-color:#910101;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-syndicate .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#910101;transition:color .25s,background-color .25s}.theme-syndicate .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-syndicate .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-syndicate .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-syndicate .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-syndicate .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-syndicate .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-syndicate .Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDIwMCAyODkuNzQyIiBvcGFjaXR5PSIuMzMiPjxwYXRoIGQ9Ik05My41MzggMGMtMTguMTEzIDAtMzQuMjIgMy4xMTItNDguMzI0IDkuMzM0LTEzLjk2NSA2LjIyMi0yNC42MTIgMTUuMDcyLTMxLjk0IDI2LjU0N0M2LjA4NCA0Ny4yMiAyLjk3MiA2MC42MzEgMi45NzIgNzYuMTE2YzAgMTAuNjQ3IDIuNzI1IDIwLjQ2NSA4LjE3NSAyOS40NTMgNS42MTYgOC45ODcgMTQuMDM5IDE3LjM1MiAyNS4yNyAyNS4wOTQgMTEuMjMgNy42MDYgMjYuNTA3IDE1LjQxOSA0NS44MyAyMy40MzggMTkuOTg0IDguMjk2IDM0Ljg0OSAxNS41NTUgNDQuNTkzIDIxLjc3NiA5Ljc0NCA2LjIyMyAxNi43NjEgMTIuODU5IDIxLjA1NSAxOS45MSA0LjI5NSA3LjA1MiA2LjQ0MiAxNS43NjQgNi40NDIgMjYuMTM0IDAgMTYuMTc4LTUuMjAyIDI4LjQ4My0xNS42MDYgMzYuOTE3LTEwLjI0IDguNDM1LTI1LjAyMiAxMi42NTMtNDQuMzQ1IDEyLjY1My0xNC4wMzkgMC0yNS41MTYtMS42Ni0zNC40MzQtNC45NzgtOC45MTgtMy40NTctMTYuMTg2LTguNzExLTIxLjgtMTUuNzYzLTUuNjE2LTcuMDUyLTEwLjA3Ni0xNi42NjEtMTMuMzc5LTI4LjgyOUgwdjU2LjgyN2MzMy44NTcgNy4zMjggNjMuNzQ5IDEwLjk5NCA4OS42NzggMTAuOTk0IDE2LjAyIDAgMzAuNzItMS4zODMgNDQuMDk4LTQuMTQ4IDEzLjU0Mi0yLjkwNCAyNS4xMDQtNy40NjcgMzQuNjgzLTEzLjY5IDkuNzQ0LTYuMzU5IDE3LjM0LTE0LjUxOSAyMi43OS0yNC40NzQgNS40NS0xMC4wOTMgOC4xNzUtMjIuNCA4LjE3NS0zNi45MTcgMC0xMi45OTctMy4zMDItMjQuMzM1LTkuOTA4LTM0LjAxNC02LjQ0LTkuODE4LTE1LjUyNS0xOC41MjctMjcuMjUxLTI2LjEzMi0xMS41NjEtNy42MDQtMjcuOTExLTE1LjgzMS00OS4wNTEtMjQuNjgtMTcuNTA2LTcuMTktMzAuNzItMTMuNjktMzkuNjM4LTE5LjQ5N1M1NC45NjkgOTMuNzU2IDQ5LjQ3OSA4Ny4zMTZjLTUuNDI2LTYuMzY2LTkuNjU4LTE1LjA3LTkuNjU4LTI0Ljg4NyAwLTkuMjY0IDIuMDc1LTE3LjIxNCA2LjIyMy0yMy44NUM1Ny4xNDIgMjQuMTggODcuMzMxIDM2Ljc4MiA5MS4xMiA2Mi45MjVjNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NyAxMi4wMyAyOC40MTVoMjAuNTMydi01NmMtNC40NzktNS45MjQtOS45NTUtMTAuNjMxLTE1LjkwOS0xNC4zNzMgMS42NC40NzkgMy4xOSAxLjAyMyA0LjYzOSAxLjY0IDYuNDk4IDIuNjI2IDEyLjE2OCA3LjMyNyAxNy4wMDcgMTQuMTAzIDQuODQgNi43NzUgOC44NSAxNi4yNDYgMTIuMDMgMjguNDE0IDAgMCA4LjQ4LS4xMjkgOC40OS0uMDAyLjQxNyA2LjQxNS0xLjc1NCA5LjQ1My00LjEyNCAxMi41NjEtMi40MTcgMy4xNy01LjE0NSA2Ljc5LTQuMDAzIDEzLjAwMyAxLjUwOCA4LjIwMyAxMC4xODQgMTAuNTk3IDE0LjYyMiA5LjMxMi0zLjMxOC0uNS01LjMxOC0xLjc1LTUuMzE4LTEuNzVzMS44NzYuOTk5IDUuNjUtMS4zNmMtMy4yNzYuOTU2LTEwLjcwNC0uNzk3LTExLjgtNi43NjMtLjk1OC01LjIwOC45NDYtNy4yOTUgMy40LTEwLjUxNCAyLjQ1NS0zLjIyIDUuMjg1LTYuOTU5IDQuNjg1LTE0LjQ4OWwuMDAzLjAwMmg4LjkyN3YtNTZjLTE1LjA3Mi0zLjg3MS0yNy42NTMtNi4zNi0zNy43NDctNy40NjVDMTE0LjI3OS41NTIgMTA0LjA0NiAwIDkzLjUzNyAwem03MC4zMjEgMTcuMzA5bC4yMzggNDAuMzA1YzEuMzE4IDEuMjI2IDIuNDQgMi4yNzggMy4zNDEgMy4xMDYgNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NiAxMi4wMyAyOC40MTRIMjAwdi01NmMtNi42NzctNC41OTQtMTkuODM2LTEwLjQ3My0zNi4xNC0xNS44MjV6bS0yOC4xMiA1LjYwNWw4LjU2NSAxNy43MTdjLTExLjk3LTYuNDY3LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTd6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE3bDQuNDk0LTE3LjcxN3ptMTUuMjIyIDI0LjAwOWw4LjU2NSAxNy43MTZjLTExLjk3LTYuNDY2LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTZ6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE2bDQuNDk0LTE3LjcxNnpNOTcuNDQgNDkuMTNsOC41NjUgMTcuNzE2Yy0xMS45Ny02LjQ2Ny0xMy44NDctOS43MTctOC41NjUtMTcuNzE2em0yMi43OTUgMGMyLjc3MiA3Ljk5OSAxLjc4OCAxMS4yNS00LjQ5MyAxNy43MTZsNC40OTMtMTcuNzE2eiIvPjwvc3ZnPg==)}.theme-nologo .Layout__content{background-image:none}
\ No newline at end of file
+body,html{box-sizing:border-box;height:100%;margin:0;font-size:12px}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{display:block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}td,th{vertical-align:baseline;text-align:left}.candystripe:nth-child(odd){background-color:rgba(0,0,0,.25)}.color-black{color:#0d0d0d!important}.color-white{color:#fff!important}.color-red{color:#d33!important}.color-orange{color:#f37827!important}.color-yellow{color:#fbd814!important}.color-olive{color:#c0d919!important}.color-green{color:#22be47!important}.color-teal{color:#00c5bd!important}.color-blue{color:#238cdc!important}.color-violet{color:#6c3fcc!important}.color-purple{color:#a93bcd!important}.color-pink{color:#e2439c!important}.color-brown{color:#af6d43!important}.color-grey{color:#7d7d7d!important}.color-good{color:#62b62a!important}.color-average{color:#f1951d!important}.color-bad{color:#d33!important}.color-label{color:#8496ab!important}.color-bg-black{background-color:#000!important}.color-bg-white{background-color:#d9d9d9!important}.color-bg-red{background-color:#bd2020!important}.color-bg-orange{background-color:#d95e0c!important}.color-bg-yellow{background-color:#d9b804!important}.color-bg-olive{background-color:#9aad14!important}.color-bg-green{background-color:#1b9638!important}.color-bg-teal{background-color:#009a93!important}.color-bg-blue{background-color:#1c71b1!important}.color-bg-violet{background-color:#552dab!important}.color-bg-purple{background-color:#8b2baa!important}.color-bg-pink{background-color:#cf2082!important}.color-bg-brown{background-color:#8c5836!important}.color-bg-grey{background-color:#646464!important}.color-bg-good{background-color:#4d9121!important}.color-bg-average{background-color:#cd7a0d!important}.color-bg-bad{background-color:#bd2020!important}.color-bg-label{background-color:#657a94!important}.debug-layout,.debug-layout :not(g):not(path){color:hsla(0,0%,100%,.9)!important;background:transparent!important;outline:1px solid hsla(0,0%,100%,.5)!important;box-shadow:none!important;filter:none!important}.debug-layout:hover,.debug-layout :not(g):not(path):hover{outline-color:hsla(0,0%,100%,.8)!important}.display-none{display:none}.display-block{display:block}.display-inline{display:inline}.display-inline-block{display:inline-block}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.my-0{margin-top:0;margin-bottom:0}.ml-0{margin-left:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.m-1{margin:6px}.mx-1{margin-left:6px;margin-right:6px}.my-1{margin-top:6px;margin-bottom:6px}.ml-1{margin-left:6px}.mt-1{margin-top:6px}.mr-1{margin-right:6px}.mb-1{margin-bottom:6px}.m-2{margin:12px}.mx-2{margin-left:12px;margin-right:12px}.my-2{margin-top:12px;margin-bottom:12px}.ml-2{margin-left:12px}.mt-2{margin-top:12px}.mr-2{margin-right:12px}.mb-2{margin-bottom:12px}.outline-dotted{outline-style:dotted!important;outline-width:2px!important}.outline-dashed{outline-style:dashed!important;outline-width:2px!important}.outline-solid{outline-style:solid!important;outline-width:2px!important}.outline-double{outline-style:double!important;outline-width:2px!important}.outline-groove{outline-style:groove!important;outline-width:2px!important}.outline-ridge{outline-style:ridge!important;outline-width:2px!important}.outline-inset{outline-style:inset!important;outline-width:2px!important}.outline-outset{outline-style:outset!important;outline-width:2px!important}.outline-color-black{outline-color:#0d0d0d!important}.outline-color-white{outline-color:#fff!important}.outline-color-red{outline-color:#d33!important}.outline-color-orange{outline-color:#f37827!important}.outline-color-yellow{outline-color:#fbd814!important}.outline-color-olive{outline-color:#c0d919!important}.outline-color-green{outline-color:#22be47!important}.outline-color-teal{outline-color:#00c5bd!important}.outline-color-blue{outline-color:#238cdc!important}.outline-color-violet{outline-color:#6c3fcc!important}.outline-color-purple{outline-color:#a93bcd!important}.outline-color-pink{outline-color:#e2439c!important}.outline-color-brown{outline-color:#af6d43!important}.outline-color-grey{outline-color:#7d7d7d!important}.outline-color-good{outline-color:#62b62a!important}.outline-color-average{outline-color:#f1951d!important}.outline-color-bad{outline-color:#d33!important}.outline-color-label{outline-color:#8496ab!important}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-baseline{text-align:baseline}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-pre{white-space:pre}.text-bold{font-weight:700}.text-italic{font-style:italic}.text-underline{text-decoration:underline}.BlockQuote{color:#8496ab;border-left:2px solid #8496ab;padding-left:6px;margin-bottom:6px}.BlockQuote:last-child{margin-bottom:0}.Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.Button:last-child{margin-right:0}.Button .fa,.Button .far,.Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.Button--hasContent .fa,.Button--hasContent .far,.Button--hasContent .fas{margin-right:3px}.Button--hasContent.Button--iconRight .fa,.Button--hasContent.Button--iconRight .far,.Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.Button--fluid{display:block;margin-left:0;margin-right:0}.Button--multiLine{white-space:normal;word-wrap:break-word}.Button--color--black{transition:color 50ms,background-color 50ms;background-color:#000;color:#fff}.Button--color--black:hover{transition:color 0ms,background-color 0ms}.Button--color--black:focus{transition:color .1s,background-color .1s}.Button--color--black:focus,.Button--color--black:hover{background-color:#0a0a0a;color:#fff}.Button--color--white{transition:color 50ms,background-color 50ms;background-color:#d9d9d9;color:#000}.Button--color--white:hover{transition:color 0ms,background-color 0ms}.Button--color--white:focus{transition:color .1s,background-color .1s}.Button--color--white:focus,.Button--color--white:hover{background-color:#f3f3f3;color:#000}.Button--color--red{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--red:hover{transition:color 0ms,background-color 0ms}.Button--color--red:focus{transition:color .1s,background-color .1s}.Button--color--red:focus,.Button--color--red:hover{background-color:#d52b2b;color:#fff}.Button--color--orange{transition:color 50ms,background-color 50ms;background-color:#d95e0c;color:#fff}.Button--color--orange:hover{transition:color 0ms,background-color 0ms}.Button--color--orange:focus{transition:color .1s,background-color .1s}.Button--color--orange:focus,.Button--color--orange:hover{background-color:#ed6f1d;color:#fff}.Button--color--yellow{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--yellow:hover{transition:color 0ms,background-color 0ms}.Button--color--yellow:focus{transition:color .1s,background-color .1s}.Button--color--yellow:focus,.Button--color--yellow:hover{background-color:#f3d00e;color:#000}.Button--color--olive{transition:color 50ms,background-color 50ms;background-color:#9aad14;color:#fff}.Button--color--olive:hover{transition:color 0ms,background-color 0ms}.Button--color--olive:focus{transition:color .1s,background-color .1s}.Button--color--olive:focus,.Button--color--olive:hover{background-color:#afc41f;color:#fff}.Button--color--green{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--color--green:hover{transition:color 0ms,background-color 0ms}.Button--color--green:focus{transition:color .1s,background-color .1s}.Button--color--green:focus,.Button--color--green:hover{background-color:#27ab46;color:#fff}.Button--color--teal{transition:color 50ms,background-color 50ms;background-color:#009a93;color:#fff}.Button--color--teal:hover{transition:color 0ms,background-color 0ms}.Button--color--teal:focus{transition:color .1s,background-color .1s}.Button--color--teal:focus,.Button--color--teal:hover{background-color:#0aafa8;color:#fff}.Button--color--blue{transition:color 50ms,background-color 50ms;background-color:#1c71b1;color:#fff}.Button--color--blue:hover{transition:color 0ms,background-color 0ms}.Button--color--blue:focus{transition:color .1s,background-color .1s}.Button--color--blue:focus,.Button--color--blue:hover{background-color:#2883c8;color:#fff}.Button--color--violet{transition:color 50ms,background-color 50ms;background-color:#552dab;color:#fff}.Button--color--violet:hover{transition:color 0ms,background-color 0ms}.Button--color--violet:focus{transition:color .1s,background-color .1s}.Button--color--violet:focus,.Button--color--violet:hover{background-color:#653ac1;color:#fff}.Button--color--purple{transition:color 50ms,background-color 50ms;background-color:#8b2baa;color:#fff}.Button--color--purple:hover{transition:color 0ms,background-color 0ms}.Button--color--purple:focus{transition:color .1s,background-color .1s}.Button--color--purple:focus,.Button--color--purple:hover{background-color:#9e38c1;color:#fff}.Button--color--pink{transition:color 50ms,background-color 50ms;background-color:#cf2082;color:#fff}.Button--color--pink:hover{transition:color 0ms,background-color 0ms}.Button--color--pink:focus{transition:color .1s,background-color .1s}.Button--color--pink:focus,.Button--color--pink:hover{background-color:#dd3794;color:#fff}.Button--color--brown{transition:color 50ms,background-color 50ms;background-color:#8c5836;color:#fff}.Button--color--brown:hover{transition:color 0ms,background-color 0ms}.Button--color--brown:focus{transition:color .1s,background-color .1s}.Button--color--brown:focus,.Button--color--brown:hover{background-color:#a06844;color:#fff}.Button--color--grey{transition:color 50ms,background-color 50ms;background-color:#646464;color:#fff}.Button--color--grey:hover{transition:color 0ms,background-color 0ms}.Button--color--grey:focus{transition:color .1s,background-color .1s}.Button--color--grey:focus,.Button--color--grey:hover{background-color:#757575;color:#fff}.Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.Button--color--good:hover{transition:color 0ms,background-color 0ms}.Button--color--good:focus{transition:color .1s,background-color .1s}.Button--color--good:focus,.Button--color--good:hover{background-color:#5da52d;color:#fff}.Button--color--average{transition:color 50ms,background-color 50ms;background-color:#cd7a0d;color:#fff}.Button--color--average:hover{transition:color 0ms,background-color 0ms}.Button--color--average:focus{transition:color .1s,background-color .1s}.Button--color--average:focus,.Button--color--average:hover{background-color:#e68d18;color:#fff}.Button--color--bad{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--bad:hover{transition:color 0ms,background-color 0ms}.Button--color--bad:focus{transition:color .1s,background-color .1s}.Button--color--bad:focus,.Button--color--bad:hover{background-color:#d52b2b;color:#fff}.Button--color--label{transition:color 50ms,background-color 50ms;background-color:#657a94;color:#fff}.Button--color--label:hover{transition:color 0ms,background-color 0ms}.Button--color--label:focus{transition:color .1s,background-color .1s}.Button--color--label:focus,.Button--color--label:hover{background-color:#7b8da4;color:#fff}.Button--color--default{transition:color 50ms,background-color 50ms;background-color:#3e6189;color:#fff}.Button--color--default:hover{transition:color 0ms,background-color 0ms}.Button--color--default:focus{transition:color .1s,background-color .1s}.Button--color--default:focus,.Button--color--default:hover{background-color:#4c729d;color:#fff}.Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.Button--color--caution:hover{transition:color 0ms,background-color 0ms}.Button--color--caution:focus{transition:color .1s,background-color .1s}.Button--color--caution:focus,.Button--color--caution:hover{background-color:#f3d00e;color:#000}.Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.Button--color--danger:hover{transition:color 0ms,background-color 0ms}.Button--color--danger:focus{transition:color .1s,background-color .1s}.Button--color--danger:focus,.Button--color--danger:hover{background-color:#d52b2b;color:#fff}.Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.Button--color--transparent:focus{transition:color .1s,background-color .1s}.Button--color--transparent:focus,.Button--color--transparent:hover{background-color:#323232;color:#fff}.Button--disabled{background-color:#999!important}.Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.Button--selected:hover{transition:color 0ms,background-color 0ms}.Button--selected:focus{transition:color .1s,background-color .1s}.Button--selected:focus,.Button--selected:hover{background-color:#27ab46;color:#fff}.Collapsible{margin-bottom:.5rem}.Collapsible:last-child{margin-bottom:0}.ColorBox{display:inline-block;width:12px;height:12px;line-height:12px;text-align:center}.Dimmer{display:flex;justify-content:center;align-items:center;position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.75);z-index:1}.Divider--horizontal{margin:6px 0}.Divider--horizontal:not(.Divider--hidden){border-top:2px solid hsla(0,0%,100%,.1)}.Divider--vertical{height:100%;margin:0 6px}.Divider--vertical:not(.Divider--hidden){border-left:2px solid hsla(0,0%,100%,.1)}.Dropdown{position:relative}.Dropdown__control{position:relative;display:inline-block;font-family:Verdana,sans-serif;font-size:12px;width:100px;line-height:17px;user-select:none}.Dropdown__arrow-button{float:right;padding-left:6px;border-left:1px solid #000;border-left:1px solid rgba(0,0,0,.25)}.Dropdown__menu{overflow-y:auto;overflow-y:scroll}.Dropdown__menu,.Dropdown__menu-noscroll{position:absolute;z-index:5;width:100px;max-height:200px;border-radius:0 0 2px 2px;background-color:#000;background-color:rgba(0,0,0,.75)}.Dropdown__menu-noscroll{overflow-y:auto}.Dropdown__menuentry{padding:2px 4px;font-family:Verdana,sans-serif;font-size:12px;line-height:17px;transition:background-color .1s}.Dropdown__menuentry:hover{background-color:#444;transition:background-color 0ms}.Dropdown__over{top:auto;bottom:100%}.FatalError{display:block!important;position:absolute;top:0;left:0;right:0;bottom:0;padding:12px;font-size:12px;font-family:Consolas,monospace;color:#fff;background-color:#00d;z-index:1000;overflow:hidden;text-align:center}.FatalError__logo{display:inline-block;text-align:left;font-size:10px;line-height:8px;position:relative;margin-top:12px;top:0;left:0;animation:FatalError__rainbow 2s linear infinite alternate,FatalError__shadow 4s linear infinite alternate,FatalError__tfmX 3s infinite alternate,FatalError__tfmY 4s infinite alternate;white-space:pre-wrap;word-break:break-all}.FatalError__header{margin-top:12px}.FatalError__stack{text-align:left;white-space:pre-wrap;word-break:break-all;margin-top:24px;margin-bottom:24px}.FatalError__footer{margin-bottom:24px}@keyframes FatalError__rainbow{0%{color:#ff0}50%{color:#0ff}to{color:#f0f}}@keyframes FatalError__shadow{0%{left:-2px;text-shadow:4px 0 #f0f}50%{left:0;text-shadow:0 0 #0ff}to{left:2px;text-shadow:-4px 0 #ff0}}@keyframes FatalError__tfmX{0%{left:15px}to{left:-15px}}@keyframes FatalError__tfmY{to{top:-15px}}.Flex{display:-ms-flexbox;display:flex}.Flex--inline{display:inline-flex}.Flex--ie8{display:table!important}.Flex--ie8--column{display:block!important}.Flex--ie8--column>.Flex__item{display:block!important;margin-left:6px;margin-right:6px}.Flex__item--ie8{display:table-cell!important}.Flex--spacing--1{margin:0 -3px}.Flex--spacing--1>.Flex__item{margin:0 3px}.Flex--spacingPrecise--1{margin:-1px}.Flex--spacingPrecise--1>.Flex__item{margin:1px}.Flex--spacing--2{margin:0 -6px}.Flex--spacing--2>.Flex__item{margin:0 6px}.Flex--spacingPrecise--2{margin:-2px}.Flex--spacingPrecise--2>.Flex__item{margin:2px}.Knob{position:relative;font-size:1rem;width:2.6em;height:2.6em;margin:0 auto -.2em;cursor:n-resize}.Knob:after{content:".";color:transparent;line-height:2.5em}.Knob__circle{position:absolute;top:.1em;bottom:.1em;left:.1em;right:.1em;margin:.3em;background-color:#333;background-image:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0));border-radius:50%;box-shadow:0 .05em .5em 0 rgba(0,0,0,.5)}.Knob__cursorBox{position:absolute;top:0;bottom:0;left:0;right:0}.Knob__cursor{position:relative;top:.05em;margin:0 auto;width:.2em;height:.8em;background-color:hsla(0,0%,100%,.9)}.Knob__popupValue,.Knob__popupValue--right{position:absolute;top:-2rem;right:50%;font-size:1rem;text-align:center;padding:.25rem .5rem;background-color:#000;transform:translateX(50%);white-space:nowrap}.Knob__popupValue--right{top:.25rem;right:-50%}.Knob__ring{position:absolute;top:0;bottom:0;left:0;right:0;padding:.1em}.Knob__ringTrackPivot{transform:rotate(135deg)}.Knob__ringTrack{fill:transparent;stroke:hsla(0,0%,100%,.1);stroke-width:8;stroke-linecap:round;stroke-dasharray:235.62}.Knob__ringFillPivot{transform:rotate(135deg)}.Knob--bipolar .Knob__ringFillPivot{transform:rotate(270deg)}.Knob__ringFill{fill:transparent;stroke:#6a96c9;stroke-width:8;stroke-linecap:round;stroke-dasharray:314.16;transition:stroke 50ms}.Knob--color--black .Knob__ringFill{stroke:#0d0d0d}.Knob--color--white .Knob__ringFill{stroke:#fff}.Knob--color--red .Knob__ringFill{stroke:#d33}.Knob--color--orange .Knob__ringFill{stroke:#f37827}.Knob--color--yellow .Knob__ringFill{stroke:#fbd814}.Knob--color--olive .Knob__ringFill{stroke:#c0d919}.Knob--color--green .Knob__ringFill{stroke:#22be47}.Knob--color--teal .Knob__ringFill{stroke:#00c5bd}.Knob--color--blue .Knob__ringFill{stroke:#238cdc}.Knob--color--violet .Knob__ringFill{stroke:#6c3fcc}.Knob--color--purple .Knob__ringFill{stroke:#a93bcd}.Knob--color--pink .Knob__ringFill{stroke:#e2439c}.Knob--color--brown .Knob__ringFill{stroke:#af6d43}.Knob--color--grey .Knob__ringFill{stroke:#7d7d7d}.Knob--color--good .Knob__ringFill{stroke:#62b62a}.Knob--color--average .Knob__ringFill{stroke:#f1951d}.Knob--color--bad .Knob__ringFill{stroke:#d33}.Knob--color--label .Knob__ringFill{stroke:#8496ab}.LabeledList{display:table;width:100%;width:calc(100% + 12px);border-collapse:collapse;border-spacing:0;margin:-3px -6px 0;padding:0}.LabeledList__row{display:table-row}.LabeledList__row:last-child .LabeledList__cell{padding-bottom:0}.LabeledList__cell{display:table-cell;margin:0;padding:3px 6px;border:0;text-align:left;vertical-align:baseline}.LabeledList__label{width:1%;white-space:nowrap;min-width:60px}.LabeledList__buttons{width:.1%;white-space:nowrap;text-align:right;padding-top:1px;padding-bottom:0}.LabeledList__breakContents{word-break:break-all;word-wrap:break-word}.Modal{background-color:#252525;max-width:calc(100% - 1rem);padding:1rem;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.NanoMap__container{overflow:hidden;width:100%;z-index:1}.NanoMap__marker{z-index:10;padding:0;margin:0}.NanoMap__button{padding:3px;font-size:12px;border:2px solid #000}.NanoMap__button:hover{background-color:#adff2f}.NanoMap__zoomer{z-index:20;background-color:rgba(0,0,0,.33);position:absolute;top:30px;left:0;padding:.5rem;width:20%}.NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.NoticeBox--color--black{color:#fff;background-color:#000}.NoticeBox--color--white{color:#000;background-color:#b3b3b3}.NoticeBox--color--red{color:#fff;background-color:#701f1f}.NoticeBox--color--orange{color:#fff;background-color:#854114}.NoticeBox--color--yellow{color:#000;background-color:#83710d}.NoticeBox--color--olive{color:#000;background-color:#576015}.NoticeBox--color--green{color:#fff;background-color:#174e24}.NoticeBox--color--teal{color:#fff;background-color:#064845}.NoticeBox--color--blue{color:#fff;background-color:#1b4565}.NoticeBox--color--violet{color:#fff;background-color:#3b2864}.NoticeBox--color--purple{color:#fff;background-color:#542663}.NoticeBox--color--pink{color:#fff;background-color:#802257}.NoticeBox--color--brown{color:#fff;background-color:#4c3729}.NoticeBox--color--grey{color:#fff;background-color:#3e3e3e}.NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.NoticeBox--color--average{color:#fff;background-color:#7b4e13}.NoticeBox--color--bad{color:#fff;background-color:#701f1f}.NoticeBox--color--label{color:#fff;background-color:#53565a}.NoticeBox--type--info{color:#fff;background-color:#235982}.NoticeBox--type--success{color:#fff;background-color:#1e662f}.NoticeBox--type--warning{color:#fff;background-color:#a95219}.NoticeBox--type--danger{color:#fff;background-color:#8f2828}.Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.Input--fluid{display:block;width:auto}.Input__baseline{display:inline-block;color:transparent}.Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.NumberInput{position:relative;display:inline-block;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:2px;color:#88bfff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.NumberInput--fluid{display:block}.NumberInput__content{margin-left:6px}.NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #88bfff;background-color:#88bfff}.NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:transparent;transition:border-color .5s}.ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.ProgressBar__fill--animated{transition:background-color .5s,width .5s}.ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.ProgressBar--color--default{border:1px solid #3e6189}.ProgressBar--color--default .ProgressBar__fill{background-color:#3e6189}.ProgressBar--color--black{border:1px solid #000!important}.ProgressBar--color--black .ProgressBar__fill{background-color:#000}.ProgressBar--color--white{border:1px solid #d9d9d9!important}.ProgressBar--color--white .ProgressBar__fill{background-color:#d9d9d9}.ProgressBar--color--red{border:1px solid #bd2020!important}.ProgressBar--color--red .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--orange{border:1px solid #d95e0c!important}.ProgressBar--color--orange .ProgressBar__fill{background-color:#d95e0c}.ProgressBar--color--yellow{border:1px solid #d9b804!important}.ProgressBar--color--yellow .ProgressBar__fill{background-color:#d9b804}.ProgressBar--color--olive{border:1px solid #9aad14!important}.ProgressBar--color--olive .ProgressBar__fill{background-color:#9aad14}.ProgressBar--color--green{border:1px solid #1b9638!important}.ProgressBar--color--green .ProgressBar__fill{background-color:#1b9638}.ProgressBar--color--teal{border:1px solid #009a93!important}.ProgressBar--color--teal .ProgressBar__fill{background-color:#009a93}.ProgressBar--color--blue{border:1px solid #1c71b1!important}.ProgressBar--color--blue .ProgressBar__fill{background-color:#1c71b1}.ProgressBar--color--violet{border:1px solid #552dab!important}.ProgressBar--color--violet .ProgressBar__fill{background-color:#552dab}.ProgressBar--color--purple{border:1px solid #8b2baa!important}.ProgressBar--color--purple .ProgressBar__fill{background-color:#8b2baa}.ProgressBar--color--pink{border:1px solid #cf2082!important}.ProgressBar--color--pink .ProgressBar__fill{background-color:#cf2082}.ProgressBar--color--brown{border:1px solid #8c5836!important}.ProgressBar--color--brown .ProgressBar__fill{background-color:#8c5836}.ProgressBar--color--grey{border:1px solid #646464!important}.ProgressBar--color--grey .ProgressBar__fill{background-color:#646464}.ProgressBar--color--good{border:1px solid #4d9121!important}.ProgressBar--color--good .ProgressBar__fill{background-color:#4d9121}.ProgressBar--color--average{border:1px solid #cd7a0d!important}.ProgressBar--color--average .ProgressBar__fill{background-color:#cd7a0d}.ProgressBar--color--bad{border:1px solid #bd2020!important}.ProgressBar--color--bad .ProgressBar__fill{background-color:#bd2020}.ProgressBar--color--label{border:1px solid #657a94!important}.ProgressBar--color--label .ProgressBar__fill{background-color:#657a94}.Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Section:last-child{margin-bottom:0}.Section--flex{display:flex;flex-flow:column}.Section--flex .Section__content{overflow:auto;flex:1}.Section__title{padding:6px;border-bottom:2px solid #4972a1}.Section__titleText{font-size:14px;font-weight:700}.Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.Section__content{padding:8px 6px}.Section__content--noTopPadding{padding-top:0}.Section__content--stretchContents{height:100%}.Section--level--1 .Section__titleText{font-size:14px}.Section--level--2 .Section__titleText{font-size:13px}.Section--level--3 .Section__titleText{font-size:12px}.Section--level--2,.Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.Slider{cursor:e-resize}.Slider__cursorOffset{position:absolute;top:0;left:0;bottom:0;transition:none!important}.Slider__cursor{position:absolute;top:0;right:-1px;bottom:0;width:0;border-left:2px solid #fff}.Slider__pointer{position:absolute;right:-5px;bottom:-4px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #fff}.Slider__popupValue{position:absolute;right:0;top:-22px;padding:2px 4px;background-color:#000;transform:translateX(50%);white-space:nowrap}.Table{display:table;width:100%;border-collapse:collapse;border-spacing:0;margin:0}.Table--collapsing{width:auto}.Table__row{display:table-row}.Table__cell{display:table-cell;padding:0 3px}.Table__cell:first-child{padding-left:0}.Table__cell:last-child{padding-right:0}.Table__cell--header,.Table__row--header .Table__cell{font-weight:700;padding-bottom:6px}.Table__cell--collapsing{width:1%;white-space:nowrap}.Tabs--horizontal{border-bottom:2px solid hsla(0,0%,100%,.1);margin-bottom:6px}.Tabs--horizontal .Tabs__tab--altSelection:after{content:"";position:absolute;bottom:0;right:0;left:0;height:2px;width:100%;background-color:#fff;border-radius:2px}.Tabs--vertical{margin-right:9px}.Tabs--vertical .Tabs__tabBox{border-right:2px solid hsla(0,0%,100%,.1);vertical-align:top}.Tabs--vertical .Tabs__tab{display:block!important;margin-right:0!important;margin-bottom:0;padding:1px 9px 0 6px;border-bottom:2px solid hsla(0,0%,100%,.1)}.Tabs--vertical .Tabs__tab:last-child{border-bottom:0}.Tabs--vertical .Tabs__tab--altSelection:after{content:"";position:absolute;top:0;bottom:0;right:0;height:100%;width:3px;background-color:#fff;border-radius:2px}.Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#000;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.Tooltip--long:after{width:250px;white-space:normal}.Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.Tooltip--left:hover:after,.Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.Tooltip--right:after{top:50%;left:100%}.Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.AccountsUplinkTerminal__list tr>td{text-align:center}.AccountsUplinkTerminal__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.AccountsUplinkTerminal__list tr:not(:first-child):focus,.AccountsUplinkTerminal__list tr:not(:first-child):hover{background-color:#252525}.AccountsUplinkTerminal__listRow--SUSPENDED{background-color:#740c20}.BrigCells__list .Table__cell,.BrigCells__list .Table__row--header{text-align:center}.BrigCells__list .BrigCells__listRow--active .Table__cell{background-color:#890e26}.CameraConsole__left{position:absolute;top:23px;bottom:0;left:0;width:220px}.CameraConsole__right{position:absolute;top:0;bottom:0;left:220px;right:0;background-color:rgba(0,0,0,.33)}.CameraConsole__new__right{position:relative;display:flex;flex:1;height:90%;flex-direction:column;background-color:rgba(0,0,0,.33)}.CameraConsole__header{display:flex;justify-content:space-between;height:24px;line-height:24px;margin:4px 6px 0}.CameraConsole__map{display:flex;overflow:hidden;background-color:#00a}.CameraConsole__map .NoticeBox{margin-top:calc(50% - 24px)}.Contractor *{font-family:Courier New,Courier,monospace}.Contractor .Section__titleText{display:inline-block;max-width:70%}.Contractor .Section__titleText>.Flex{width:100%}.Contractor .Section__titleText>.Flex>.Flex__item:first-of-type{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.Contractor__Contract .Button{font-size:11px;white-space:normal!important}.Contractor__photoZoom{text-align:center}.Contractor__photoZoom>img{width:96px;-ms-interpolation-mode:nearest-neighbor}.Contractor__photoZoom>.Button{position:absolute}.Exofab .Dropdown__control{margin-bottom:-1px}.Exofab .Dropdown__selected-text{overflow:hidden;text-overflow:ellipsis;width:80%;display:inline-block;margin-bottom:-3px}.Exofab__materials{height:100%;overflow:auto}.Exofab__materials .Section__content{height:calc(100% - 31px)}.Exofab__material:not(.Exofab__material--line){margin-bottom:.25rem}.Exofab__material:not(.Exofab__material--line) .Button{width:28px;margin-right:.5rem}.Exofab__material:not(.Exofab__material--line) .Button img{vertical-align:middle}.Exofab__material--line .Button{background-color:transparent;width:14px}.Exofab__material--line .Button img{width:16px}.Exofab__material--name{color:#7e90a7;text-transform:capitalize}.Exofab__material .Button{margin-bottom:0;padding:0;vertical-align:middle}.Exofab__material .Button img{margin-left:-2px}.Exofab__queue{height:100%}.Exofab__queue--queue .Button{margin:0;transform:scale(.75)}.Exofab__queue--queue .Button:first-of-type{margin-left:.25rem}.Exofab__queue--time{text-align:center;color:#7e90a7}.Exofab__queue--deficit{text-align:center;color:#db2828;font-weight:700}.Exofab__queue--deficit>div:not(.Divider){display:inline-block;margin-bottom:-.75rem}.Exofab__queue .Section__content{height:calc(100% - 31px)}.Exofab__queue .Exofab__material--amount{margin-right:.25rem}.Exofab__design--cost{display:inline-block;vertical-align:middle;margin-top:.33rem}.Exofab__design--cost>div{display:inline-block}.Exofab__design--cost .Exofab__material{margin-left:.25rem}.Exofab__design--time{display:inline-block;margin-left:.5rem;color:#7e90a7}.Exofab__design--time i{margin-right:.25rem}.Exofab__designs .Section__content{height:calc(100% - 31px);overflow:auto}.Exofab__building{height:40px}.Exofab__building .ProgressBar{width:100%;height:100%}.Exofab__building .ProgressBar__content{line-height:22px}.Ingredient__Table tr:nth-child(2n){background-color:#333}.Ingredient__Table td{padding:3px}.Library__Booklist tr>td{text-align:center}.Library__Booklist tr:not(:first-child){height:24px;line-height:24px;transition:background-color 50ms}.Library__Booklist tr:not(:first-child):focus,.Library__Booklist tr:not(:first-child):hover{background-color:#252525}.Library__SearchContainer{background-color:rgba(37,37,37,.5)}.Library__SearchContainer tr td:first-child{width:60%}.Newscaster__menu{width:40px;height:100%;margin-right:.5rem;flex-basis:content}.Newscaster__menu .Section__content{padding-left:0}.Newscaster__menuButton{color:#767676;cursor:pointer;position:relative;margin-left:6px;margin-right:1rem;white-space:nowrap;transition:color .1s}.Newscaster__menuButton--title{width:80%;display:none;overflow:hidden;text-overflow:ellipsis}.Newscaster__menuButton--unread{background-color:#e45e5e;color:#fff;font-size:10px;text-align:center;border-radius:32px;display:inline-block;width:12px;position:absolute;left:16px;margin-top:14px}.Newscaster__menuButton--selected{color:#fff}.Newscaster__menuButton--selected:after{content:"";background-color:#4972a1;width:2px;height:24px;position:absolute;left:-6px}.Newscaster__menuButton--security{color:#4972a1}.Newscaster__menuButton i{width:30px;text-align:center;vertical-align:middle;margin-left:-1px;margin-right:.5rem;margin-top:1px}.Newscaster__menuButton:hover{color:#fff}.Newscaster__menuButton:hover:before{background-color:#fff}.Newscaster__menuButton:not(:last-of-type){margin-bottom:.5rem}.Newscaster__menu--open{width:175px}.Newscaster__menu--open .Newscaster__menuButton--title{display:inline-block}.Newscaster__jobCategory--security .Section__title{color:#a14c49;border-bottom:2px solid #a14c49!important}.Newscaster__jobCategory--engineering .Section__title{color:#a17849;border-bottom:2px solid #a17849!important}.Newscaster__jobCategory--medical .Section__title{color:#499ea1;border-bottom:2px solid #499ea1!important}.Newscaster__jobCategory--science .Section__title{color:#a14972;border-bottom:2px solid #a14972!important}.Newscaster__jobCategory--service .Section__title{color:#a1499e;border-bottom:2px solid #a1499e!important}.Newscaster__jobCategory--supply .Section__title{color:#9ea149;border-bottom:2px solid #9ea149!important}.Newscaster__jobCategory:last-child{margin-bottom:.5rem}.Newscaster__jobOpening--command{font-weight:700}.Newscaster__jobOpening:not(:last-child){margin-bottom:.5rem}.Newscaster__emptyNotice{color:#7e90a7;text-align:center;position:absolute;top:50%;left:50%;transform:translateY(-50%) translateX(-50%)}.Newscaster__emptyNotice i{margin-bottom:.25rem}.Newscaster__photo{cursor:pointer;width:96px;border:1px solid #000;transition:border-color .1s;-ms-interpolation-mode:nearest-neighbor}.Newscaster__photo:hover{border-color:grey}.Newscaster__photoZoom{text-align:center}.Newscaster__photoZoom>img{transform:scale(2);-ms-interpolation-mode:nearest-neighbor}.Newscaster__photoZoom>.Button{position:absolute;width:64px;left:50%;margin-left:-32px;bottom:1rem}.Newscaster__story--wanted{background-color:rgba(219,40,40,.1)}.Newscaster__story--wanted .Section__title{color:#db2828;border-bottom:2px solid #a14c49!important}.Newscaster__story:last-child{margin-bottom:.5rem}.NuclearBomb__displayBox{background-color:#002003;border:4px inset #e8e4c9;color:#03e017;font-size:24px;font-family:monospace;padding:6px}.NuclearBomb__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9}.NuclearBomb__Button--keypad:hover{background-color:#f7f6ee!important;border-color:#f7f6ee!important}.NuclearBomb__Button--1{background-color:#d3cfb7!important;border-color:#d3cfb7!important;color:#a9a692!important}.NuclearBomb__Button--E{background-color:#d9b804!important;border-color:#d9b804!important}.NuclearBomb__Button--E:hover{background-color:#f3d00e!important;border-color:#f3d00e!important}.NuclearBomb__Button--C{background-color:#bd2020!important;border-color:#bd2020!important}.NuclearBomb__Button--C:hover{background-color:#d52b2b!important;border-color:#d52b2b!important}.NuclearBomb__NTIcon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.OreRedemption__Ores .OreHeader,.OreRedemption__Ores .OreLine{min-height:32px;padding:0 .5rem}.OreRedemption__Ores .OreHeader{line-height:32px;background-color:rgba(0,0,0,.33);font-weight:700}.OreRedemption__Ores .OreLine:last-of-type{margin-bottom:.5rem}.OreRedemption__Ores .Section__content{padding:0;height:100%;overflow:auto}.PDA__footer{position:fixed;bottom:0;left:0;right:0;height:30px}.PDA__footer__button{text-align:center;padding-top:4px;padding-bottom:2px;font-size:24px}.PdaPainter__list tr>td{text-align:center}.PdaPainter__list tr{height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.PdaPainter__list tr:focus,.PdaPainter__list tr:hover{background-color:#252525}.PoolController__Buttons .Button:not(:last-child){margin-bottom:8px}.RndConsole{position:relative}.RndConsole__Overlay{position:absolute;display:flex;align-items:stretch;justify-content:stretch;top:0;left:0;width:100%;height:100vh}.RndConsole__LatheCategory__MatchingDesigns .Table__cell{padding-bottom:4px}.RndConsole__MainMenu__Buttons .Button:not(:last-child){margin-bottom:4px}.RndConsole__LatheMaterials .Table__cell:nth-child(2){padding-left:16px}.RndConsole__LatheMaterialStorage .Table__cell{padding:4px 0;border-bottom:1px solid #767676}.RndConsole__Overlay__Wrapper{display:flex;align-items:center;justify-content:stretch;flex-grow:1;padding:24px;background-color:hsla(0,0%,100%,0)}.RndConsole__Overlay__Wrapper .NoticeBox{flex-grow:1;margin-bottom:80px;font-size:18pt;padding:.3em .75em}.RndConsole__RndNavbar .Button{margin-bottom:10px}.Roulette{font-family:Palatino}.Roulette__board{display:table;width:100%;border-collapse:collapse;border:2px solid #fff;margin:0}.Roulette__board-row{padding:0;margin:0}.Roulette__board-cell{display:table-cell;padding:0;margin:0;border:2px solid #fff;font-family:Palatino}.Roulette__board-cell:first-child{padding-left:0}.Roulette__board-cell:last-child{padding-right:0}.Roulette__board-extrabutton{text-align:center;font-size:20px;font-weight:700;height:28px;border:none!important;margin:0!important;padding-top:4px!important;color:#fff!important}.Roulette__lowertable{margin-top:8px;margin-left:80px;margin-right:80px;border-collapse:collapse;border:2px solid #fff;border-spacing:0}.Roulette__lowertable--cell{border:2px solid #fff;padding:0;margin:0}.Roulette__lowertable--betscell{vertical-align:top}.Roulette__lowertable--spinresult{text-align:center;font-size:100px;font-weight:700;vertical-align:middle}.Roulette__lowertable--spinresult-black{background-color:#000}.Roulette__lowertable--spinresult-red{background-color:#db2828}.Roulette__lowertable--spinresult-green{background-color:#20b142}.Roulette__lowertable--spinbutton{margin:0!important;border:none!important;font-size:50px;line-height:60px!important;text-align:center;font-weight:700}.Roulette__lowertable--header{width:1%;text-align:center;font-size:20px;font-weight:700}.Safe--engraving{position:absolute;width:95%;height:96%;left:2.5%;top:2%;border:5px outset #3e4f6a;padding:5px;text-align:center}.Safe--engraving--arrow{color:#35435a}.Safe--engraving--hinge{content:" ";background-color:#191f2a;width:25px;height:40px;position:absolute;right:-15px;margin-top:-20px}.Safe--dialer{margin-bottom:.5rem}.Safe--dialer--number{color:#bbb;display:inline;background-color:#191f2a;font-size:1.5rem;font-weight:700;padding:0 .5rem}.Safe--dialer--right .Button i{z-index:-100}.Safe--dialer .Button{width:80px}.Safe--contents{border:10px solid #191f2a;background-color:#0f131a;height:calc(85% + 7.5px);text-align:left;padding:5px}.Safe--help{position:absolute;bottom:10px;left:5px;width:50%}.SecureStorage__displayBox{background-color:#212121;color:#8b8b8b;border:.167em inset #e8e4c9;font-size:375%;font-family:monospace;padding:.25em}.SecureStorage__displayBox--good{background-color:#002003;color:#03e017}.SecureStorage__displayBox--bad{background-color:#210000;color:#e00202}.SecureStorage__Button{outline-width:.25rem!important;border-width:.3rem!important;border:.167em outset #e8e4c9;padding-left:0!important;padding-right:0!important}.SecureStorage__Button--keypad{background-color:#e8e4c9;border-color:#e8e4c9;color:#a9a692}.SecureStorage__Button--keypad:hover{background-color:#f7f6ee;border-color:#f7f6ee;color:#a9a692}.SecureStorage__Button--E{background-color:#d9b804;border-color:#d9b804;color:#fff}.SecureStorage__Button--E:hover{background-color:#f5d317;border-color:#f5d317;color:#fff}.SecureStorage__Button--C{background-color:#bd2020;border-color:#bd2020;color:#fff}.SecureStorage__Button--C:hover{background-color:#d83434;border-color:#d83434;color:#fff}.SecurityRecords__list tr>td{text-align:center}.SecurityRecords__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.SecurityRecords__list tr:not(:first-child):focus,.SecurityRecords__list tr:not(:first-child):hover{background-color:#252525}.SecurityRecords__listRow--arrest{background-color:#740c20}.SecurityRecords__listRow--execute{background-color:#683e8c}.SecurityRecords__listRow--incarcerated{background-color:#633203}.SecurityRecords__listRow--parolled{background-color:#006d7b}.SecurityRecords__listRow--released{background-color:#1c5574}.SecurityRecords__listRow--demote{background-color:#155500}.SecurityRecords__listRow--search{background-color:#987a00}.SecurityRecords__listRow--monitor{background-color:#1f1180}.MedicalRecords__list tr>td{text-align:center}.MedicalRecords__list tr:not(:first-child){height:24px;line-height:24px;cursor:pointer;transition:background-color 50ms}.MedicalRecords__list tr:not(:first-child):focus,.MedicalRecords__list tr:not(:first-child):hover{background-color:#252525}.MedicalRecords__listRow--deceased{background-color:#740c20}.MedicalRecords__listRow--ssd{background-color:#006d7b}.MedicalRecords__listRow--physically_unfit{background-color:#987a00}.MedicalRecords__listRow--disabled{background-color:#1f1180}.MedicalRecords__listMedbot--0{background-color:#2b1414}.Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.Layout__content--flexRow{display:flex;flex-flow:row}.Layout__content--flexColumn{display:flex;flex-flow:column}.Layout__content--scrollable{overflow-y:auto}.Layout__content--noMargin{margin:0}.TitleBar{background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#363636;transition:color .25s,background-color .25s}.TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.TitleBar__minimize{position:absolute;top:6px;right:46px}.TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.Window{bottom:0;right:0;color:#fff;background-color:#252525;background-image:linear-gradient(180deg,#2a2a2a 0,#202020)}.Window,.Window__titleBar{position:fixed;top:0;left:0}.Window__titleBar{z-index:1;width:100%;height:32px}.Window__rest{top:32px}.Window__dimmer,.Window__rest{position:fixed;bottom:0;left:0;right:0}.Window__dimmer{top:0;background-color:rgba(62,62,62,.25);pointer-events:none}.Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#131313;color:hsla(0,0%,100%,.8)}.Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDQyNSAyMDAiIG9wYWNpdHk9Ii4zMyI+PHBhdGggZD0iTTE3OC4wMDQuMDM5SDEwNi44YTYuNzYxIDYuMDI2IDAgMDAtNi43NjEgNi4wMjV2MTg3Ljg3MmE2Ljc2MSA2LjAyNiAwIDAwNi43NjEgNi4wMjVoNTMuMTA3YTYuNzYxIDYuMDI2IDAgMDA2Ljc2Mi02LjAyNVY5Mi4zOTJsNzIuMjE2IDEwNC43YTYuNzYxIDYuMDI2IDAgMDA1Ljc2IDIuODdIMzE4LjJhNi43NjEgNi4wMjYgMCAwMDYuNzYxLTYuMDI2VjYuMDY0QTYuNzYxIDYuMDI2IDAgMDAzMTguMi4wNGgtNTQuNzE3YTYuNzYxIDYuMDI2IDAgMDAtNi43NiA2LjAyNXYxMDIuNjJMMTgzLjc2MyAyLjkwOWE2Ljc2MSA2LjAyNiAwIDAwLTUuNzYtMi44N3pNNC44NDUgMjIuMTA5QTEzLjQxMiAxMi41MDIgMCAwMTEzLjQ3OC4wMzloNjYuMTE4QTUuMzY1IDUgMCAwMTg0Ljk2IDUuMDR2NzkuODh6TTQyMC4xNTUgMTc3Ljg5MWExMy40MTIgMTIuNTAyIDAgMDEtOC42MzMgMjIuMDdoLTY2LjExOGE1LjM2NSA1IDAgMDEtNS4zNjUtNS4wMDF2LTc5Ljg4eiIvPjwvc3ZnPg==);background-size:70%;background-position:50%;background-repeat:no-repeat}.theme-cardtable .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-cardtable .Button:last-child{margin-right:0}.theme-cardtable .Button .fa,.theme-cardtable .Button .far,.theme-cardtable .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-cardtable .Button--hasContent .fa,.theme-cardtable .Button--hasContent .far,.theme-cardtable .Button--hasContent .fas{margin-right:3px}.theme-cardtable .Button--hasContent.Button--iconRight .fa,.theme-cardtable .Button--hasContent.Button--iconRight .far,.theme-cardtable .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-cardtable .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-cardtable .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-cardtable .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-cardtable .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff}.theme-cardtable .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--default:focus,.theme-cardtable .Button--color--default:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-cardtable .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--caution:focus,.theme-cardtable .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-cardtable .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-cardtable .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--danger:focus,.theme-cardtable .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-cardtable .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#117039;color:#fff;background-color:rgba(17,112,57,0);color:hsla(0,0%,100%,.5)}.theme-cardtable .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--color--transparent:focus,.theme-cardtable .Button--color--transparent:hover{background-color:#1c8247;color:#fff}.theme-cardtable .Button--disabled{background-color:#363636!important}.theme-cardtable .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-cardtable .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-cardtable .Button--selected:focus{transition:color .1s,background-color .1s}.theme-cardtable .Button--selected:focus,.theme-cardtable .Button--selected:hover{background-color:#b31212;color:#fff}.theme-cardtable .Input{position:relative;display:inline-block;width:120px;border:1px solid #88bfff;border:1px solid rgba(136,191,255,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-cardtable .Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-cardtable .Input--fluid{display:block;width:auto}.theme-cardtable .Input__baseline{display:inline-block;color:transparent}.theme-cardtable .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-cardtable .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-cardtable .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-cardtable .NumberInput{position:relative;display:inline-block;border:1px solid #fff;border:1px solid hsla(0,0%,100%,.75);border-radius:0;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-cardtable .NumberInput--fluid{display:block}.theme-cardtable .NumberInput__content{margin-left:6px}.theme-cardtable .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-cardtable .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #fff;background-color:#fff}.theme-cardtable .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-cardtable .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-cardtable .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-cardtable .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-cardtable .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-cardtable .ProgressBar--color--default{border:1px solid #000}.theme-cardtable .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-cardtable .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Section:last-child{margin-bottom:0}.theme-cardtable .Section--flex{display:flex;flex-flow:column}.theme-cardtable .Section--flex .Section__content{overflow:auto;flex:1}.theme-cardtable .Section__title{padding:6px;border-bottom:2px solid #000}.theme-cardtable .Section__titleText{font-size:14px;font-weight:700}.theme-cardtable .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-cardtable .Section__content{padding:8px 6px}.theme-cardtable .Section__content--noTopPadding{padding-top:0}.theme-cardtable .Section__content--stretchContents{height:100%}.theme-cardtable .Section--level--1 .Section__titleText{font-size:14px}.theme-cardtable .Section--level--2 .Section__titleText{font-size:13px}.theme-cardtable .Section--level--3 .Section__titleText{font-size:12px}.theme-cardtable .Section--level--2,.theme-cardtable .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-cardtable .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#0d542b;scrollbar-face-color:#16914a;scrollbar-3dlight-color:#117039;scrollbar-highlight-color:#117039;scrollbar-track-color:#0d542b;scrollbar-arrow-color:#5ae695;scrollbar-shadow-color:#16914a}.theme-cardtable .Layout__content--flexRow{display:flex;flex-flow:row}.theme-cardtable .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-cardtable .Layout__content--scrollable{overflow-y:auto}.theme-cardtable .Layout__content--noMargin{margin:0}.theme-cardtable .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#117039;background-image:linear-gradient(180deg,#117039 0,#117039)}.theme-cardtable .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-cardtable .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-cardtable .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(39,148,85,.25);pointer-events:none}.theme-cardtable .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#09381d;color:hsla(0,0%,100%,.8)}.theme-cardtable .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-cardtable .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-cardtable .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-cardtable .TitleBar{background-color:#381608;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-cardtable .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#381608;transition:color .25s,background-color .25s}.theme-cardtable .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-cardtable .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-cardtable .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-cardtable .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-cardtable .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-cardtable .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-cardtable .Button{border:2px solid #fff}.theme-changeling .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-changeling .Button:last-child{margin-right:0}.theme-changeling .Button .fa,.theme-changeling .Button .far,.theme-changeling .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-changeling .Button--hasContent .fa,.theme-changeling .Button--hasContent .far,.theme-changeling .Button--hasContent .fas{margin-right:3px}.theme-changeling .Button--hasContent.Button--iconRight .fa,.theme-changeling .Button--hasContent.Button--iconRight .far,.theme-changeling .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-changeling .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-changeling .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-changeling .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-changeling .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#563d6b;color:#fff}.theme-changeling .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--default:focus,.theme-changeling .Button--color--default:hover{background-color:#664b7d;color:#fff}.theme-changeling .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-changeling .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--caution:focus,.theme-changeling .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-changeling .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-changeling .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--danger:focus,.theme-changeling .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-changeling .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2e2633;color:#fff;background-color:rgba(46,38,51,0);color:hsla(0,0%,100%,.5)}.theme-changeling .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--color--transparent:focus,.theme-changeling .Button--color--transparent:hover{background-color:#3b3341;color:#fff}.theme-changeling .Button--disabled{background-color:#999!important}.theme-changeling .Button--selected{transition:color 50ms,background-color 50ms;background-color:#188552;color:#fff}.theme-changeling .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-changeling .Button--selected:focus{transition:color .1s,background-color .1s}.theme-changeling .Button--selected:focus,.theme-changeling .Button--selected:hover{background-color:#249962;color:#fff}.theme-changeling .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#231d26;scrollbar-face-color:#44384b;scrollbar-3dlight-color:#2e2633;scrollbar-highlight-color:#2e2633;scrollbar-track-color:#231d26;scrollbar-arrow-color:#9986a5;scrollbar-shadow-color:#44384b}.theme-changeling .Section:last-child{margin-bottom:0}.theme-changeling .Section--flex{display:flex;flex-flow:column}.theme-changeling .Section--flex .Section__content{overflow:auto;flex:1}.theme-changeling .Section__title{padding:6px;border-bottom:2px solid #563d6b}.theme-changeling .Section__titleText{font-size:14px;font-weight:700}.theme-changeling .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-changeling .Section__content{padding:8px 6px}.theme-changeling .Section__content--noTopPadding{padding-top:0}.theme-changeling .Section__content--stretchContents{height:100%}.theme-changeling .Section--level--1 .Section__titleText{font-size:14px}.theme-changeling .Section--level--2 .Section__titleText{font-size:13px}.theme-changeling .Section--level--3 .Section__titleText{font-size:12px}.theme-changeling .Section--level--2,.theme-changeling .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-changeling .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#231d26;scrollbar-face-color:#44384b;scrollbar-3dlight-color:#2e2633;scrollbar-highlight-color:#2e2633;scrollbar-track-color:#231d26;scrollbar-arrow-color:#9986a5;scrollbar-shadow-color:#44384b}.theme-changeling .Layout__content--flexRow{display:flex;flex-flow:row}.theme-changeling .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-changeling .Layout__content--scrollable{overflow-y:auto}.theme-changeling .Layout__content--noMargin{margin:0}.theme-changeling .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2e2633;background-image:linear-gradient(180deg,#3e3345 0,#1e1921)}.theme-changeling .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-changeling .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-changeling .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(72,63,78,.25);pointer-events:none}.theme-changeling .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#17131a;color:hsla(0,0%,100%,.8)}.theme-changeling .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-changeling .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-changeling .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-changeling .TitleBar{background-color:#352d3b;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-changeling .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#352d3b;transition:color .25s,background-color .25s}.theme-changeling .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-changeling .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-changeling .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-changeling .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-changeling .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-changeling .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-changeling .Layout__content{background-image:none}.theme-hackerman .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-hackerman .Button:last-child{margin-right:0}.theme-hackerman .Button .fa,.theme-hackerman .Button .far,.theme-hackerman .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-hackerman .Button--hasContent .fa,.theme-hackerman .Button--hasContent .far,.theme-hackerman .Button--hasContent .fas{margin-right:3px}.theme-hackerman .Button--hasContent.Button--iconRight .fa,.theme-hackerman .Button--hasContent.Button--iconRight .far,.theme-hackerman .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-hackerman .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-hackerman .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-hackerman .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-hackerman .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--default:focus,.theme-hackerman .Button--color--default:hover{background-color:#26ff26;color:#000}.theme-hackerman .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-hackerman .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--caution:focus,.theme-hackerman .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-hackerman .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-hackerman .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--danger:focus,.theme-hackerman .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-hackerman .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#121b12;color:#fff;background-color:rgba(18,27,18,0);color:hsla(0,0%,100%,.5)}.theme-hackerman .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--color--transparent:focus,.theme-hackerman .Button--color--transparent:hover{background-color:#1d271d;color:#fff}.theme-hackerman .Button--disabled{background-color:#4a6a4a!important}.theme-hackerman .Button--selected{transition:color 50ms,background-color 50ms;background-color:#0f0;color:#000}.theme-hackerman .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-hackerman .Button--selected:focus{transition:color .1s,background-color .1s}.theme-hackerman .Button--selected:focus,.theme-hackerman .Button--selected:hover{background-color:#26ff26;color:#000}.theme-hackerman .Input{position:relative;display:inline-block;width:120px;border:1px solid #0f0;border:1px solid rgba(0,255,0,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-hackerman .Input--disabled{color:#777;border-color:#404040;border-color:rgba(64,64,64,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-hackerman .Input--fluid{display:block;width:auto}.theme-hackerman .Input__baseline{display:inline-block;color:transparent}.theme-hackerman .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-hackerman .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-hackerman .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-hackerman .Modal{background-color:#121b12;max-width:calc(100% - 1rem);padding:1rem}.theme-hackerman .Modal,.theme-hackerman .Section{scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box}.theme-hackerman .Section:last-child{margin-bottom:0}.theme-hackerman .Section--flex{display:flex;flex-flow:column}.theme-hackerman .Section--flex .Section__content{overflow:auto;flex:1}.theme-hackerman .Section__title{padding:6px;border-bottom:2px solid #0f0}.theme-hackerman .Section__titleText{font-size:14px;font-weight:700}.theme-hackerman .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-hackerman .Section__content{padding:8px 6px}.theme-hackerman .Section__content--noTopPadding{padding-top:0}.theme-hackerman .Section__content--stretchContents{height:100%}.theme-hackerman .Section--level--1 .Section__titleText{font-size:14px}.theme-hackerman .Section--level--2 .Section__titleText{font-size:13px}.theme-hackerman .Section--level--3 .Section__titleText{font-size:12px}.theme-hackerman .Section--level--2,.theme-hackerman .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-hackerman .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#0e140e;scrollbar-face-color:#253725;scrollbar-3dlight-color:#121b12;scrollbar-highlight-color:#121b12;scrollbar-track-color:#0e140e;scrollbar-arrow-color:#74a274;scrollbar-shadow-color:#253725}.theme-hackerman .Layout__content--flexRow{display:flex;flex-flow:row}.theme-hackerman .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-hackerman .Layout__content--scrollable{overflow-y:auto}.theme-hackerman .Layout__content--noMargin{margin:0}.theme-hackerman .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#121b12;background-image:linear-gradient(180deg,#121b12 0,#121b12)}.theme-hackerman .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-hackerman .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-hackerman .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(40,50,40,.25);pointer-events:none}.theme-hackerman .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#090e09;color:hsla(0,0%,100%,.8)}.theme-hackerman .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-hackerman .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-hackerman .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-hackerman .TitleBar{background-color:#223d22;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-hackerman .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#223d22;transition:color .25s,background-color .25s}.theme-hackerman .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-hackerman .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-hackerman .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-hackerman .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-hackerman .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-hackerman .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-hackerman .Layout__content{background-image:none}.theme-hackerman .Button{font-family:monospace;border:2px outset #0a0;outline:1px solid #007a00}.theme-hackerman .candystripe:nth-child(odd){background-color:rgba(0,100,0,.5)}.theme-abductor .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-abductor .Button:last-child{margin-right:0}.theme-abductor .Button .fa,.theme-abductor .Button .far,.theme-abductor .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-abductor .Button--hasContent .fa,.theme-abductor .Button--hasContent .far,.theme-abductor .Button--hasContent .fas{margin-right:3px}.theme-abductor .Button--hasContent.Button--iconRight .fa,.theme-abductor .Button--hasContent.Button--iconRight .far,.theme-abductor .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-abductor .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-abductor .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-abductor .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-abductor .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#ad2350;color:#fff}.theme-abductor .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--default:focus,.theme-abductor .Button--color--default:hover{background-color:#c42f60;color:#fff}.theme-abductor .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-abductor .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--caution:focus,.theme-abductor .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-abductor .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-abductor .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--danger:focus,.theme-abductor .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-abductor .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#2a314a;color:#fff;background-color:rgba(42,49,74,0);color:hsla(0,0%,100%,.5)}.theme-abductor .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--color--transparent:focus,.theme-abductor .Button--color--transparent:hover{background-color:#373e59;color:#fff}.theme-abductor .Button--disabled{background-color:#363636!important}.theme-abductor .Button--selected{transition:color 50ms,background-color 50ms;background-color:#465899;color:#fff}.theme-abductor .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-abductor .Button--selected:focus{transition:color .1s,background-color .1s}.theme-abductor .Button--selected:focus,.theme-abductor .Button--selected:hover{background-color:#5569ad;color:#fff}.theme-abductor .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#a82d55;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-abductor .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-abductor .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-abductor .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-abductor .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-abductor .Input{position:relative;display:inline-block;width:120px;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-abductor .Input--disabled{color:#777;border-color:#171717;border-color:hsla(0,0%,9%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-abductor .Input--fluid{display:block;width:auto}.theme-abductor .Input__baseline{display:inline-block;color:transparent}.theme-abductor .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-abductor .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-abductor .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-abductor .NumberInput{position:relative;display:inline-block;border:1px solid #404b6e;border:1px solid rgba(64,75,110,.75);border-radius:2px;color:#404b6e;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-abductor .NumberInput--fluid{display:block}.theme-abductor .NumberInput__content{margin-left:6px}.theme-abductor .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-abductor .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #404b6e;background-color:#404b6e}.theme-abductor .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-abductor .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-abductor .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-abductor .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-abductor .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-abductor .ProgressBar--color--default{border:1px solid #931e44}.theme-abductor .ProgressBar--color--default .ProgressBar__fill{background-color:#931e44}.theme-abductor .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Section:last-child{margin-bottom:0}.theme-abductor .Section--flex{display:flex;flex-flow:column}.theme-abductor .Section--flex .Section__content{overflow:auto;flex:1}.theme-abductor .Section__title{padding:6px;border-bottom:2px solid #ad2350}.theme-abductor .Section__titleText{font-size:14px;font-weight:700}.theme-abductor .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-abductor .Section__content{padding:8px 6px}.theme-abductor .Section__content--noTopPadding{padding-top:0}.theme-abductor .Section__content--stretchContents{height:100%}.theme-abductor .Section--level--1 .Section__titleText{font-size:14px}.theme-abductor .Section--level--2 .Section__titleText{font-size:13px}.theme-abductor .Section--level--3 .Section__titleText{font-size:12px}.theme-abductor .Section--level--2,.theme-abductor .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-abductor .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-abductor .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#a82d55;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-abductor .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-abductor .Tooltip--long:after{width:250px;white-space:normal}.theme-abductor .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-abductor .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-abductor .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-abductor .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-abductor .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-abductor .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-abductor .Tooltip--left:hover:after,.theme-abductor .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-abductor .Tooltip--right:after{top:50%;left:100%}.theme-abductor .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-abductor .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#202538;scrollbar-face-color:#384263;scrollbar-3dlight-color:#2a314a;scrollbar-highlight-color:#2a314a;scrollbar-track-color:#202538;scrollbar-arrow-color:#818db8;scrollbar-shadow-color:#384263}.theme-abductor .Layout__content--flexRow{display:flex;flex-flow:row}.theme-abductor .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-abductor .Layout__content--scrollable{overflow-y:auto}.theme-abductor .Layout__content--noMargin{margin:0}.theme-abductor .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#2a314a;background-image:linear-gradient(180deg,#353e5e 0,#1f2436)}.theme-abductor .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-abductor .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-abductor .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(68,76,104,.25);pointer-events:none}.theme-abductor .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#151925;color:hsla(0,0%,100%,.8)}.theme-abductor .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-abductor .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-abductor .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-abductor .TitleBar{background-color:#9e1b46;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-abductor .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#9e1b46;transition:color .25s,background-color .25s}.theme-abductor .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-abductor .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-abductor .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-abductor .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-abductor .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-abductor .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-abductor .Layout__content{background-image:none}.theme-malfunction .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-malfunction .Button:last-child{margin-right:0}.theme-malfunction .Button .fa,.theme-malfunction .Button .far,.theme-malfunction .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-malfunction .Button--hasContent .fa,.theme-malfunction .Button--hasContent .far,.theme-malfunction .Button--hasContent .fas{margin-right:3px}.theme-malfunction .Button--hasContent.Button--iconRight .fa,.theme-malfunction .Button--hasContent.Button--iconRight .far,.theme-malfunction .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-malfunction .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-malfunction .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-malfunction .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-malfunction .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#910101;color:#fff}.theme-malfunction .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--default:focus,.theme-malfunction .Button--color--default:hover{background-color:#a60b0b;color:#fff}.theme-malfunction .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-malfunction .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--caution:focus,.theme-malfunction .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-malfunction .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-malfunction .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--danger:focus,.theme-malfunction .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-malfunction .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1b3443;color:#fff;background-color:rgba(27,52,67,0);color:hsla(0,0%,100%,.5)}.theme-malfunction .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--color--transparent:focus,.theme-malfunction .Button--color--transparent:hover{background-color:#274252;color:#fff}.theme-malfunction .Button--disabled{background-color:#363636!important}.theme-malfunction .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1e5881;color:#fff}.theme-malfunction .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-malfunction .Button--selected:focus{transition:color .1s,background-color .1s}.theme-malfunction .Button--selected:focus,.theme-malfunction .Button--selected:hover{background-color:#2a6894;color:#fff}.theme-malfunction .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#1a3f57;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-malfunction .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-malfunction .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-malfunction .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-malfunction .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-malfunction .Input{position:relative;display:inline-block;width:120px;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-malfunction .Input--disabled{color:#777;border-color:#090909;border-color:rgba(9,9,9,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-malfunction .Input--fluid{display:block;width:auto}.theme-malfunction .Input__baseline{display:inline-block;color:transparent}.theme-malfunction .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-malfunction .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-malfunction .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-malfunction .NumberInput{position:relative;display:inline-block;border:1px solid #910101;border:1px solid rgba(145,1,1,.75);border-radius:2px;color:#910101;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-malfunction .NumberInput--fluid{display:block}.theme-malfunction .NumberInput__content{margin-left:6px}.theme-malfunction .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-malfunction .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #910101;background-color:#910101}.theme-malfunction .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-malfunction .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-malfunction .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-malfunction .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-malfunction .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-malfunction .ProgressBar--color--default{border:1px solid #7b0101}.theme-malfunction .ProgressBar--color--default .ProgressBar__fill{background-color:#7b0101}.theme-malfunction .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Section:last-child{margin-bottom:0}.theme-malfunction .Section--flex{display:flex;flex-flow:column}.theme-malfunction .Section--flex .Section__content{overflow:auto;flex:1}.theme-malfunction .Section__title{padding:6px;border-bottom:2px solid #910101}.theme-malfunction .Section__titleText{font-size:14px;font-weight:700}.theme-malfunction .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-malfunction .Section__content{padding:8px 6px}.theme-malfunction .Section__content--noTopPadding{padding-top:0}.theme-malfunction .Section__content--stretchContents{height:100%}.theme-malfunction .Section--level--1 .Section__titleText{font-size:14px}.theme-malfunction .Section--level--2 .Section__titleText{font-size:13px}.theme-malfunction .Section--level--3 .Section__titleText{font-size:12px}.theme-malfunction .Section--level--2,.theme-malfunction .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-malfunction .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-malfunction .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#235577;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-malfunction .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-malfunction .Tooltip--long:after{width:250px;white-space:normal}.theme-malfunction .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-malfunction .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-malfunction .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-malfunction .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-malfunction .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-malfunction .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-malfunction .Tooltip--left:hover:after,.theme-malfunction .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-malfunction .Tooltip--right:after{top:50%;left:100%}.theme-malfunction .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-malfunction .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#142732;scrollbar-face-color:#274b61;scrollbar-3dlight-color:#1b3443;scrollbar-highlight-color:#1b3443;scrollbar-track-color:#142732;scrollbar-arrow-color:#6ba2c3;scrollbar-shadow-color:#274b61}.theme-malfunction .Layout__content--flexRow{display:flex;flex-flow:row}.theme-malfunction .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-malfunction .Layout__content--scrollable{overflow-y:auto}.theme-malfunction .Layout__content--noMargin{margin:0}.theme-malfunction .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1b3443;background-image:linear-gradient(180deg,#244559 0,#12232d)}.theme-malfunction .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-malfunction .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-malfunction .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(50,79,96,.25);pointer-events:none}.theme-malfunction .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0e1a22;color:hsla(0,0%,100%,.8)}.theme-malfunction .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-malfunction .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-malfunction .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-malfunction .TitleBar{background-color:#1a3f57;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-malfunction .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#1a3f57;transition:color .25s,background-color .25s}.theme-malfunction .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-malfunction .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-malfunction .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-malfunction .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-malfunction .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-malfunction .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-malfunction .Layout__content{background-image:none}.theme-ntos .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-ntos .Button:last-child{margin-right:0}.theme-ntos .Button .fa,.theme-ntos .Button .far,.theme-ntos .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-ntos .Button--hasContent .fa,.theme-ntos .Button--hasContent .far,.theme-ntos .Button--hasContent .fas{margin-right:3px}.theme-ntos .Button--hasContent.Button--iconRight .fa,.theme-ntos .Button--hasContent.Button--iconRight .far,.theme-ntos .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-ntos .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-ntos .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-ntos .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-ntos .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#384e68;color:#fff}.theme-ntos .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--default:focus,.theme-ntos .Button--color--default:hover{background-color:#465e7a;color:#fff}.theme-ntos .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-ntos .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--caution:focus,.theme-ntos .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-ntos .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-ntos .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--danger:focus,.theme-ntos .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-ntos .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#1f2b39;color:#fff;background-color:rgba(31,43,57,0);color:rgba(227,240,255,.75)}.theme-ntos .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--color--transparent:focus,.theme-ntos .Button--color--transparent:hover{background-color:#2b3847;color:#fff}.theme-ntos .Button--disabled{background-color:#999!important}.theme-ntos .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-ntos .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-ntos .Button--selected:focus{transition:color .1s,background-color .1s}.theme-ntos .Button--selected:focus,.theme-ntos .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-ntos .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-ntos .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-ntos .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-ntos .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-ntos .ProgressBar--color--default{border:1px solid #384e68}.theme-ntos .ProgressBar--color--default .ProgressBar__fill{background-color:#384e68}.theme-ntos .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Section:last-child{margin-bottom:0}.theme-ntos .Section--flex{display:flex;flex-flow:column}.theme-ntos .Section--flex .Section__content{overflow:auto;flex:1}.theme-ntos .Section__title{padding:6px;border-bottom:2px solid #4972a1}.theme-ntos .Section__titleText{font-size:14px;font-weight:700}.theme-ntos .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-ntos .Section__content{padding:8px 6px}.theme-ntos .Section__content--noTopPadding{padding-top:0}.theme-ntos .Section__content--stretchContents{height:100%}.theme-ntos .Section--level--1 .Section__titleText{font-size:14px}.theme-ntos .Section--level--2 .Section__titleText{font-size:13px}.theme-ntos .Section--level--3 .Section__titleText{font-size:12px}.theme-ntos .Section--level--2,.theme-ntos .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-ntos .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#17202b;scrollbar-face-color:#2e3f55;scrollbar-3dlight-color:#1f2b39;scrollbar-highlight-color:#1f2b39;scrollbar-track-color:#17202b;scrollbar-arrow-color:#7693b5;scrollbar-shadow-color:#2e3f55}.theme-ntos .Layout__content--flexRow{display:flex;flex-flow:row}.theme-ntos .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-ntos .Layout__content--scrollable{overflow-y:auto}.theme-ntos .Layout__content--noMargin{margin:0}.theme-ntos .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#1f2b39;background-image:linear-gradient(180deg,#223040 0,#1b2633)}.theme-ntos .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-ntos .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-ntos .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(55,69,85,.25);pointer-events:none}.theme-ntos .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#0f151d;color:hsla(0,0%,100%,.8)}.theme-ntos .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-ntos .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-ntos .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-ntos .TitleBar{background-color:#2a3b4e;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-ntos .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#2a3b4e;transition:color .25s,background-color .25s}.theme-ntos .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-ntos .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-ntos .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-ntos .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-ntos .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-ntos .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:0;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-retro .Button:last-child{margin-right:0}.theme-retro .Button .fa,.theme-retro .Button .far,.theme-retro .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-retro .Button--hasContent .fa,.theme-retro .Button--hasContent .far,.theme-retro .Button--hasContent .fas{margin-right:3px}.theme-retro .Button--hasContent.Button--iconRight .fa,.theme-retro .Button--hasContent.Button--iconRight .far,.theme-retro .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-retro .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-retro .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-retro .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-retro .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000}.theme-retro .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--default:focus,.theme-retro .Button--color--default:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-retro .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--caution:focus,.theme-retro .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-retro .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-retro .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--danger:focus,.theme-retro .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-retro .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#e8e4c9;color:#000;background-color:rgba(232,228,201,0);color:hsla(0,0%,100%,.5)}.theme-retro .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-retro .Button--color--transparent:focus,.theme-retro .Button--color--transparent:hover{background-color:#f7f6ee;color:#000}.theme-retro .Button--disabled{background-color:#363636!important}.theme-retro .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-retro .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-retro .Button--selected:focus{transition:color .1s,background-color .1s}.theme-retro .Button--selected:focus,.theme-retro .Button--selected:hover{background-color:#b31212;color:#fff}.theme-retro .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:0;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-retro .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-retro .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-retro .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-retro .ProgressBar--color--default{border:1px solid #000}.theme-retro .ProgressBar--color--default .ProgressBar__fill{background-color:#000}.theme-retro .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Section:last-child{margin-bottom:0}.theme-retro .Section--flex{display:flex;flex-flow:column}.theme-retro .Section--flex .Section__content{overflow:auto;flex:1}.theme-retro .Section__title{padding:6px;border-bottom:2px solid #000}.theme-retro .Section__titleText{font-size:14px;font-weight:700}.theme-retro .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-retro .Section__content{padding:8px 6px}.theme-retro .Section__content--noTopPadding{padding-top:0}.theme-retro .Section__content--stretchContents{height:100%}.theme-retro .Section--level--1 .Section__titleText{font-size:14px}.theme-retro .Section--level--2 .Section__titleText{font-size:13px}.theme-retro .Section--level--3 .Section__titleText{font-size:12px}.theme-retro .Section--level--2,.theme-retro .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-retro .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-retro .Layout__content--flexRow{display:flex;flex-flow:row}.theme-retro .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-retro .Layout__content--scrollable{overflow-y:auto}.theme-retro .Layout__content--noMargin{margin:0}.theme-retro .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#e8e4c9 0,#e8e4c9)}.theme-retro .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-retro .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-retro .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-retro .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-retro .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-retro .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-retro .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-retro .TitleBar{background-color:#585337;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-retro .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#585337;transition:color .25s,background-color .25s}.theme-retro .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-retro .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-retro .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-retro .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-retro .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-retro .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-retro .Button{font-family:monospace;color:#161613;border:8px outset #e8e4c9;outline:3px solid #161613}.theme-retro .Layout__content{background-image:none}.theme-safe .Section{position:relative;margin-bottom:6px;background-color:#c4c195;background-color:#b2ae74;box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1a202c;scrollbar-face-color:#313f54;scrollbar-3dlight-color:#222b3a;scrollbar-highlight-color:#222b3a;scrollbar-track-color:#1a202c;scrollbar-arrow-color:#7b90b2;scrollbar-shadow-color:#313f54}.theme-safe .Section:last-child{margin-bottom:0}.theme-safe .Section--flex{display:flex;flex-flow:column}.theme-safe .Section--flex .Section__content{overflow:auto;flex:1}.theme-safe .Section__title{padding:6px;border-bottom:2px solid #3d566b}.theme-safe .Section__titleText{font-size:14px;font-weight:700}.theme-safe .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-safe .Section__content{padding:8px 6px}.theme-safe .Section__content--noTopPadding{padding-top:0}.theme-safe .Section__content--stretchContents{height:100%}.theme-safe .Section--level--1 .Section__titleText{font-size:14px}.theme-safe .Section--level--2 .Section__titleText{font-size:13px}.theme-safe .Section--level--3 .Section__titleText{font-size:12px}.theme-safe .Section--level--2,.theme-safe .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-safe .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#222b3a;background-image:linear-gradient(180deg,#242d3d 0,#202937)}.theme-safe .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-safe .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-safe .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(58,69,86,.25);pointer-events:none}.theme-safe .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#11161d;color:hsla(0,0%,100%,.8)}.theme-safe .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-safe .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-safe .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-safe .TitleBar{background-color:#35435a;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-safe .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#35435a;transition:color .25s,background-color .25s}.theme-safe .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-safe .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-safe .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-safe .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-safe .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-safe .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-safe .Safe--engraving{position:absolute;width:95%;height:96%;left:2.5%;top:2%;border:5px outset #3e4f6a;padding:5px;text-align:center}.theme-safe .Safe--engraving--arrow{color:#35435a}.theme-safe .Safe--engraving--hinge{content:" ";background-color:#191f2a;width:25px;height:40px;position:absolute;right:-15px;margin-top:-20px}.theme-safe .Safe--dialer{margin-bottom:.5rem}.theme-safe .Safe--dialer--number{color:#bbb;display:inline;background-color:#191f2a;font-size:1.5rem;font-weight:700;padding:0 .5rem}.theme-safe .Safe--dialer--right .Button i{z-index:-100}.theme-safe .Safe--dialer .Button{width:80px}.theme-safe .Safe--contents{border:10px solid #191f2a;background-color:#0f131a;height:calc(85% + 7.5px);text-align:left;padding:5px}.theme-safe .Safe--help{position:absolute;bottom:10px;left:5px;width:50%}.theme-safe .Layout__content{background-image:none}.theme-safe .Section{font-family:Comic Sans MS,cursive,sans-serif;font-style:italic;color:#000;box-shadow:5px 5px #111;background-image:linear-gradient(180deg,#b2ae74 0,#8e8b5d);transform:rotate(-1deg)}.theme-safe .Section__title{padding-bottom:0;border:0}.theme-safe .Section:before{content:" ";display:block;width:24px;height:40px;background-image:linear-gradient(180deg,transparent 0,#fff);box-shadow:1px 1px #111;opacity:.2;position:absolute;top:-30px;left:calc(50% - 12px);transform:rotate(-5deg)}.theme-securestorage .TitleBar{background-color:#e8e4c9;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-securestorage .TitleBar__clickable{color:rgba(25,25,22,.5);background-color:#e8e4c9;transition:color .25s,background-color .25s}.theme-securestorage .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-securestorage .TitleBar__title{position:absolute;top:0;left:46px;color:#191916;font-size:14px;line-height:31px;white-space:nowrap}.theme-securestorage .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-securestorage .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-securestorage .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-securestorage .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-securestorage .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-securestorage .Layout__content--flexRow{display:flex;flex-flow:row}.theme-securestorage .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-securestorage .Layout__content--scrollable{overflow-y:auto}.theme-securestorage .Layout__content--noMargin{margin:0}.theme-securestorage .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#e8e4c9;background-image:linear-gradient(180deg,#f1efde 0,#dfd9b4)}.theme-securestorage .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-securestorage .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-securestorage .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(251,250,246,.25);pointer-events:none}.theme-securestorage .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#988d41;color:hsla(0,0%,100%,.8)}.theme-securestorage .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-securestorage .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-securestorage .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-securestorage .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#c8be7d;scrollbar-face-color:#eae7ce;scrollbar-3dlight-color:#e8e4c9;scrollbar-highlight-color:#e8e4c9;scrollbar-track-color:#c8be7d;scrollbar-arrow-color:#f4f2e4;scrollbar-shadow-color:#eae7ce}.theme-securestorage .Section:last-child{margin-bottom:0}.theme-securestorage .Section--flex{display:flex;flex-flow:column}.theme-securestorage .Section--flex .Section__content{overflow:auto;flex:1}.theme-securestorage .Section__title{padding:6px;border-bottom:2px solid #397439}.theme-securestorage .Section__titleText{font-size:14px;font-weight:700}.theme-securestorage .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-securestorage .Section__content{padding:8px 6px}.theme-securestorage .Section__content--noTopPadding{padding-top:0}.theme-securestorage .Section__content--stretchContents{height:100%}.theme-securestorage .Section--level--1 .Section__titleText{font-size:14px}.theme-securestorage .Section--level--2 .Section__titleText{font-size:13px}.theme-securestorage .Section--level--3 .Section__titleText{font-size:12px}.theme-securestorage .Section--level--2,.theme-securestorage .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-securestorage .Layout__content{background-image:none}.theme-security .color-label{color:#ab8784!important}.theme-security .color-bg-good{background-color:#4d9121!important}.theme-security .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-security .Button:last-child{margin-right:0}.theme-security .Button .fa,.theme-security .Button .far,.theme-security .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-security .Button--hasContent .fa,.theme-security .Button--hasContent .far,.theme-security .Button--hasContent .fas{margin-right:3px}.theme-security .Button--hasContent.Button--iconRight .fa,.theme-security .Button--hasContent.Button--iconRight .far,.theme-security .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-security .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-security .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-security .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-security .Button--color--good{transition:color 50ms,background-color 50ms;background-color:#4d9121;color:#fff}.theme-security .Button--color--good:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--good:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--good:focus,.theme-security .Button--color--good:hover{background-color:#5da52d;color:#fff}.theme-security .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#a14c49;color:#fff}.theme-security .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--default:focus,.theme-security .Button--color--default:hover{background-color:#b35f5c;color:#fff}.theme-security .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#d9b804;color:#000}.theme-security .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--caution:focus,.theme-security .Button--color--caution:hover{background-color:#f3d00e;color:#000}.theme-security .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#bd2020;color:#fff}.theme-security .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--danger:focus,.theme-security .Button--color--danger:hover{background-color:#d52b2b;color:#fff}.theme-security .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#252525;color:#fff;background-color:rgba(37,37,37,0);color:hsla(0,0%,100%,.5)}.theme-security .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-security .Button--color--transparent:focus,.theme-security .Button--color--transparent:hover{background-color:#323232;color:#fff}.theme-security .Button--disabled{background-color:#999!important}.theme-security .Button--selected{transition:color 50ms,background-color 50ms;background-color:#1b9638;color:#fff}.theme-security .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-security .Button--selected:focus{transition:color .1s,background-color .1s}.theme-security .Button--selected:focus,.theme-security .Button--selected:hover{background-color:#27ab46;color:#fff}.theme-security .Input{position:relative;display:inline-block;width:120px;border:1px solid #ff8d88;border:1px solid rgba(255,141,136,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-security .Input--disabled{color:#777;border-color:#848484;border-color:hsla(0,0%,51.8%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-security .Input--fluid{display:block;width:auto}.theme-security .Input__baseline{display:inline-block;color:transparent}.theme-security .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-security .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-security .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-security .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-security .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#000;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-security .NoticeBox--color--good{color:#fff;background-color:#2e4b1a}.theme-security .NoticeBox--type--info{color:#fff;background-color:#822329}.theme-security .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-security .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-security .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-security .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#1c1c1c;scrollbar-face-color:#3b3b3b;scrollbar-3dlight-color:#252525;scrollbar-highlight-color:#252525;scrollbar-track-color:#1c1c1c;scrollbar-arrow-color:#929292;scrollbar-shadow-color:#3b3b3b}.theme-security .Section:last-child{margin-bottom:0}.theme-security .Section--flex{display:flex;flex-flow:column}.theme-security .Section--flex .Section__content{overflow:auto;flex:1}.theme-security .Section__title{padding:6px;border-bottom:2px solid #a14c49}.theme-security .Section__titleText{font-size:14px;font-weight:700}.theme-security .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-security .Section__content{padding:8px 6px}.theme-security .Section__content--noTopPadding{padding-top:0}.theme-security .Section__content--stretchContents{height:100%}.theme-security .Section--level--1 .Section__titleText{font-size:14px}.theme-security .Section--level--2 .Section__titleText{font-size:13px}.theme-security .Section--level--3 .Section__titleText{font-size:12px}.theme-security .Section--level--2,.theme-security .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-security .Newscaster__menu{width:40px;height:100%;margin-right:.5rem;flex-basis:content}.theme-security .Newscaster__menu .Section__content{padding-left:0}.theme-security .Newscaster__menuButton{color:#767676;cursor:pointer;position:relative;margin-left:6px;margin-right:1rem;white-space:nowrap;transition:color .1s}.theme-security .Newscaster__menuButton--title{width:80%;display:none;overflow:hidden;text-overflow:ellipsis}.theme-security .Newscaster__menuButton--unread{background-color:#e45e5e;color:#fff;font-size:10px;text-align:center;border-radius:32px;display:inline-block;width:12px;position:absolute;left:16px;margin-top:14px}.theme-security .Newscaster__menuButton--selected{color:#fff}.theme-security .Newscaster__menuButton--selected:after{content:"";background-color:#a14c49;width:2px;height:24px;position:absolute;left:-6px}.theme-security .Newscaster__menuButton--security{color:#a14c49}.theme-security .Newscaster__menuButton i{width:30px;text-align:center;vertical-align:middle;margin-left:-1px;margin-right:.5rem;margin-top:1px}.theme-security .Newscaster__menuButton:hover{color:#fff}.theme-security .Newscaster__menuButton:hover:before{background-color:#fff}.theme-security .Newscaster__menuButton:not(:last-of-type){margin-bottom:.5rem}.theme-security .Newscaster__menu--open{width:175px}.theme-security .Newscaster__menu--open .Newscaster__menuButton--title{display:inline-block}.theme-security .Newscaster__jobCategory--security .Section__title{color:#a14c49;border-bottom:2px solid #a14c49!important}.theme-security .Newscaster__jobCategory--engineering .Section__title{color:#a17849;border-bottom:2px solid #a17849!important}.theme-security .Newscaster__jobCategory--medical .Section__title{color:#499ea1;border-bottom:2px solid #499ea1!important}.theme-security .Newscaster__jobCategory--science .Section__title{color:#a14972;border-bottom:2px solid #a14972!important}.theme-security .Newscaster__jobCategory--service .Section__title{color:#a1499e;border-bottom:2px solid #a1499e!important}.theme-security .Newscaster__jobCategory--supply .Section__title{color:#9ea149;border-bottom:2px solid #9ea149!important}.theme-security .Newscaster__jobCategory:last-child{margin-bottom:.5rem}.theme-security .Newscaster__jobOpening--command{font-weight:700}.theme-security .Newscaster__jobOpening:not(:last-child){margin-bottom:.5rem}.theme-security .Newscaster__emptyNotice{color:#a7817e;text-align:center;position:absolute;top:50%;left:50%;transform:translateY(-50%) translateX(-50%)}.theme-security .Newscaster__emptyNotice i{margin-bottom:.25rem}.theme-security .Newscaster__photo{cursor:pointer;width:96px;border:1px solid #000;transition:border-color .1s;-ms-interpolation-mode:nearest-neighbor}.theme-security .Newscaster__photo:hover{border-color:grey}.theme-security .Newscaster__photoZoom{text-align:center}.theme-security .Newscaster__photoZoom>img{transform:scale(2);-ms-interpolation-mode:nearest-neighbor}.theme-security .Newscaster__photoZoom>.Button{position:absolute;width:64px;left:50%;margin-left:-32px;bottom:1rem}.theme-security .Newscaster__story--wanted{background-color:rgba(219,40,40,.1)}.theme-security .Newscaster__story--wanted .Section__title{color:#db2828;border-bottom:2px solid #a14c49!important}.theme-security .Newscaster__story:last-child{margin-bottom:.5rem}.theme-syndicate .Button{position:relative;display:inline-block;line-height:20px;padding:0 6px;margin-right:2px;white-space:nowrap;outline:0;border-radius:2px;margin-bottom:2px;user-select:none;-ms-user-select:none}.theme-syndicate .Button:last-child{margin-right:0}.theme-syndicate .Button .fa,.theme-syndicate .Button .far,.theme-syndicate .Button .fas{margin-left:-3px;margin-right:-3px;min-width:16px;text-align:center}.theme-syndicate .Button--hasContent .fa,.theme-syndicate .Button--hasContent .far,.theme-syndicate .Button--hasContent .fas{margin-right:3px}.theme-syndicate .Button--hasContent.Button--iconRight .fa,.theme-syndicate .Button--hasContent.Button--iconRight .far,.theme-syndicate .Button--hasContent.Button--iconRight .fas{margin-right:0;margin-left:3px}.theme-syndicate .Button--ellipsis{overflow:hidden;text-overflow:ellipsis}.theme-syndicate .Button--fluid{display:block;margin-left:0;margin-right:0}.theme-syndicate .Button--multiLine{white-space:normal;word-wrap:break-word}.theme-syndicate .Button--color--default{transition:color 50ms,background-color 50ms;background-color:#397439;color:#fff}.theme-syndicate .Button--color--default:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--default:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--default:focus,.theme-syndicate .Button--color--default:hover{background-color:#478647;color:#fff}.theme-syndicate .Button--color--caution{transition:color 50ms,background-color 50ms;background-color:#be6209;color:#fff}.theme-syndicate .Button--color--caution:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--caution:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--caution:focus,.theme-syndicate .Button--color--caution:hover{background-color:#d67313;color:#fff}.theme-syndicate .Button--color--danger{transition:color 50ms,background-color 50ms;background-color:#9a9d00;color:#fff}.theme-syndicate .Button--color--danger:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--danger:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--danger:focus,.theme-syndicate .Button--color--danger:hover{background-color:#afb30a;color:#fff}.theme-syndicate .Button--color--transparent{transition:color 50ms,background-color 50ms;background-color:#550202;color:#fff;background-color:rgba(85,2,2,0);color:hsla(0,0%,100%,.5)}.theme-syndicate .Button--color--transparent:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--color--transparent:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--color--transparent:focus,.theme-syndicate .Button--color--transparent:hover{background-color:#650c0c;color:#fff}.theme-syndicate .Button--disabled{background-color:#363636!important}.theme-syndicate .Button--selected{transition:color 50ms,background-color 50ms;background-color:#9d0808;color:#fff}.theme-syndicate .Button--selected:hover{transition:color 0ms,background-color 0ms}.theme-syndicate .Button--selected:focus{transition:color .1s,background-color .1s}.theme-syndicate .Button--selected:focus,.theme-syndicate .Button--selected:hover{background-color:#b31212;color:#fff}.theme-syndicate .NoticeBox{padding:4px 6px;margin-bottom:6px;box-shadow:none;font-weight:700;font-style:italic;color:#fff;background-color:#910101;background-image:repeating-linear-gradient(-45deg,transparent,transparent 10px,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 20px)}.theme-syndicate .NoticeBox--type--info{color:#fff;background-color:#235982}.theme-syndicate .NoticeBox--type--success{color:#fff;background-color:#1e662f}.theme-syndicate .NoticeBox--type--warning{color:#fff;background-color:#a95219}.theme-syndicate .NoticeBox--type--danger{color:#fff;background-color:#8f2828}.theme-syndicate .Input{position:relative;display:inline-block;width:120px;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#fff;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;overflow:visible;white-space:nowrap}.theme-syndicate .Input--disabled{color:#777;border-color:#6b6b6b;border-color:hsla(0,0%,42%,.75);background-color:#333;background-color:rgba(0,0,0,.25)}.theme-syndicate .Input--fluid{display:block;width:auto}.theme-syndicate .Input__baseline{display:inline-block;color:transparent}.theme-syndicate .Input__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit}.theme-syndicate .Input__input:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .Input__textarea{border:0;width:calc(100% + 4px);font-size:12px;line-height:17px;margin-left:-4px;font-family:Verdana,sans-serif;background-color:transparent;color:#fff;color:inherit;resize:both;overflow:auto;white-space:pre-wrap}.theme-syndicate .Input__textarea:-ms-input-placeholder{font-style:italic;color:#777;color:hsla(0,0%,100%,.45)}.theme-syndicate .NumberInput{position:relative;display:inline-block;border:1px solid #87ce87;border:1px solid rgba(135,206,135,.75);border-radius:2px;color:#87ce87;background-color:#000;background-color:rgba(0,0,0,.75);padding:0 4px;margin-right:2px;line-height:17px;text-align:right;overflow:visible;cursor:n-resize}.theme-syndicate .NumberInput--fluid{display:block}.theme-syndicate .NumberInput__content{margin-left:6px}.theme-syndicate .NumberInput__barContainer{position:absolute;top:2px;bottom:2px;left:2px}.theme-syndicate .NumberInput__bar{position:absolute;bottom:0;left:0;width:3px;box-sizing:border-box;border-bottom:1px solid #87ce87;background-color:#87ce87}.theme-syndicate .NumberInput__input{display:block;position:absolute;top:0;bottom:0;left:0;right:0;border:0;outline:0;width:100%;font-size:12px;line-height:17px;height:17px;margin:0;padding:0 6px;font-family:Verdana,sans-serif;background-color:#000;color:#fff;text-align:right}.theme-syndicate .ProgressBar{display:inline-block;position:relative;width:100%;padding:0 6px;border-radius:2px;background-color:rgba(0,0,0,.5);transition:border-color .5s}.theme-syndicate .ProgressBar__fill{position:absolute;top:0;left:0;bottom:0}.theme-syndicate .ProgressBar__fill--animated{transition:background-color .5s,width .5s}.theme-syndicate .ProgressBar__content{position:relative;line-height:17px;width:100%;text-align:right}.theme-syndicate .ProgressBar--color--default{border:1px solid #306330}.theme-syndicate .ProgressBar--color--default .ProgressBar__fill{background-color:#306330}.theme-syndicate .Section{position:relative;margin-bottom:6px;background-color:#1a1a1a;background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5);box-sizing:border-box;scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Section:last-child{margin-bottom:0}.theme-syndicate .Section--flex{display:flex;flex-flow:column}.theme-syndicate .Section--flex .Section__content{overflow:auto;flex:1}.theme-syndicate .Section__title{padding:6px;border-bottom:2px solid #397439}.theme-syndicate .Section__titleText{font-size:14px;font-weight:700}.theme-syndicate .Section__buttons{position:absolute;display:inline-block;right:6px;margin-top:-1px}.theme-syndicate .Section__content{padding:8px 6px}.theme-syndicate .Section__content--noTopPadding{padding-top:0}.theme-syndicate .Section__content--stretchContents{height:100%}.theme-syndicate .Section--level--1 .Section__titleText{font-size:14px}.theme-syndicate .Section--level--2 .Section__titleText{font-size:13px}.theme-syndicate .Section--level--3 .Section__titleText{font-size:12px}.theme-syndicate .Section--level--2,.theme-syndicate .Section--level--3{background-color:transparent;box-shadow:none;margin-left:-6px;margin-right:-6px}.theme-syndicate .Tooltip{position:absolute;top:0;left:0;right:0;bottom:0;font-style:normal;font-weight:400;line-height:normal}.theme-syndicate .Tooltip:after{position:absolute;display:block;white-space:nowrap;z-index:2;padding:6px 10px;transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;text-align:left;content:attr(data-tooltip);transition:all .15s;color:#fff;background-color:#4a0202;box-shadow:1px 1px 15px -1px rgba(0,0,0,.5);border-radius:2px}.theme-syndicate .Tooltip:hover:after{transition:all 70ms;pointer-events:none;visibility:visible;opacity:1}.theme-syndicate .Tooltip--long:after{width:250px;white-space:normal}.theme-syndicate .Tooltip--top:after{bottom:100%;left:50%;transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--top:hover:after{transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--top-left:after{bottom:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--top-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--top-right:after{bottom:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--top-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--bottom:after{top:100%;left:50%;transform:translateX(-50%) translateY(-8px)}.theme-syndicate .Tooltip--bottom:hover:after{transform:translateX(-50%) translateY(8px)}.theme-syndicate .Tooltip--bottom-left:after{top:100%;right:50%;transform:translateX(12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-left:hover:after{transform:translateX(12px) translateY(8px)}.theme-syndicate .Tooltip--bottom-right:after{top:100%;left:50%;transform:translateX(-12px) translateY(-8px)}.theme-syndicate .Tooltip--bottom-right:hover:after{transform:translateX(-12px) translateY(8px)}.theme-syndicate .Tooltip--left:after{top:50%;right:100%;transform:translateX(8px) translateY(-50%)}.theme-syndicate .Tooltip--left:hover:after,.theme-syndicate .Tooltip--right:after{transform:translateX(-8px) translateY(-50%)}.theme-syndicate .Tooltip--right:after{top:50%;left:100%}.theme-syndicate .Tooltip--right:hover:after{transform:translateX(8px) translateY(-50%)}.theme-syndicate .Layout__content{position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden;margin:6px;scrollbar-base-color:#400202;scrollbar-face-color:#7e0303;scrollbar-3dlight-color:#550202;scrollbar-highlight-color:#550202;scrollbar-track-color:#400202;scrollbar-arrow-color:#fa3030;scrollbar-shadow-color:#7e0303}.theme-syndicate .Layout__content--flexRow{display:flex;flex-flow:row}.theme-syndicate .Layout__content--flexColumn{display:flex;flex-flow:column}.theme-syndicate .Layout__content--scrollable{overflow-y:auto}.theme-syndicate .Layout__content--noMargin{margin:0}.theme-syndicate .Window{position:fixed;top:0;bottom:0;left:0;right:0;color:#fff;background-color:#550202;background-image:linear-gradient(180deg,#730303 0,#370101)}.theme-syndicate .Window__titleBar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px}.theme-syndicate .Window__rest{position:fixed;top:32px;bottom:0;left:0;right:0}.theme-syndicate .Window__dimmer{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(117,22,22,.25);pointer-events:none}.theme-syndicate .Window__toast{position:fixed;bottom:0;left:0;right:0;font-size:12px;height:40px;line-height:39px;padding:0 12px;background-color:#2b0101;color:hsla(0,0%,100%,.8)}.theme-syndicate .Window__resizeHandle__se{position:fixed;bottom:0;right:0;width:20px;height:20px;cursor:se-resize}.theme-syndicate .Window__resizeHandle__s{position:fixed;bottom:0;left:0;right:0;height:6px;cursor:s-resize}.theme-syndicate .Window__resizeHandle__e{position:fixed;top:0;bottom:0;right:0;width:3px;cursor:e-resize}.theme-syndicate .TitleBar{background-color:#910101;border-bottom:1px solid #161616;box-shadow:0 2px 2px rgba(0,0,0,.1);user-select:none;-ms-user-select:none}.theme-syndicate .TitleBar__clickable{color:hsla(0,0%,100%,.5);background-color:#910101;transition:color .25s,background-color .25s}.theme-syndicate .TitleBar__clickable:hover{color:#fff;background-color:#c00;transition:color 0ms,background-color 0ms}.theme-syndicate .TitleBar__title{position:absolute;top:0;left:46px;color:hsla(0,0%,100%,.75);font-size:14px;line-height:31px;white-space:nowrap}.theme-syndicate .TitleBar__dragZone{position:absolute;top:0;left:0;right:0;height:32px}.theme-syndicate .TitleBar__statusIcon{position:absolute;top:0;left:12px;transition:color .5s;font-size:20px;line-height:32px!important}.theme-syndicate .TitleBar__minimize{position:absolute;top:6px;right:46px}.theme-syndicate .TitleBar__close{position:absolute;top:-1px;right:0;width:45px;height:32px;font-size:20px;line-height:31px;text-align:center}.theme-syndicate .Layout__content{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMCIgdmlld0JveD0iMCAwIDIwMCAyODkuNzQyIiBvcGFjaXR5PSIuMzMiPjxwYXRoIGQ9Ik05My41MzggMGMtMTguMTEzIDAtMzQuMjIgMy4xMTItNDguMzI0IDkuMzM0LTEzLjk2NSA2LjIyMi0yNC42MTIgMTUuMDcyLTMxLjk0IDI2LjU0N0M2LjA4NCA0Ny4yMiAyLjk3MiA2MC42MzEgMi45NzIgNzYuMTE2YzAgMTAuNjQ3IDIuNzI1IDIwLjQ2NSA4LjE3NSAyOS40NTMgNS42MTYgOC45ODcgMTQuMDM5IDE3LjM1MiAyNS4yNyAyNS4wOTQgMTEuMjMgNy42MDYgMjYuNTA3IDE1LjQxOSA0NS44MyAyMy40MzggMTkuOTg0IDguMjk2IDM0Ljg0OSAxNS41NTUgNDQuNTkzIDIxLjc3NiA5Ljc0NCA2LjIyMyAxNi43NjEgMTIuODU5IDIxLjA1NSAxOS45MSA0LjI5NSA3LjA1MiA2LjQ0MiAxNS43NjQgNi40NDIgMjYuMTM0IDAgMTYuMTc4LTUuMjAyIDI4LjQ4My0xNS42MDYgMzYuOTE3LTEwLjI0IDguNDM1LTI1LjAyMiAxMi42NTMtNDQuMzQ1IDEyLjY1My0xNC4wMzkgMC0yNS41MTYtMS42Ni0zNC40MzQtNC45NzgtOC45MTgtMy40NTctMTYuMTg2LTguNzExLTIxLjgtMTUuNzYzLTUuNjE2LTcuMDUyLTEwLjA3Ni0xNi42NjEtMTMuMzc5LTI4LjgyOUgwdjU2LjgyN2MzMy44NTcgNy4zMjggNjMuNzQ5IDEwLjk5NCA4OS42NzggMTAuOTk0IDE2LjAyIDAgMzAuNzItMS4zODMgNDQuMDk4LTQuMTQ4IDEzLjU0Mi0yLjkwNCAyNS4xMDQtNy40NjcgMzQuNjgzLTEzLjY5IDkuNzQ0LTYuMzU5IDE3LjM0LTE0LjUxOSAyMi43OS0yNC40NzQgNS40NS0xMC4wOTMgOC4xNzUtMjIuNCA4LjE3NS0zNi45MTcgMC0xMi45OTctMy4zMDItMjQuMzM1LTkuOTA4LTM0LjAxNC02LjQ0LTkuODE4LTE1LjUyNS0xOC41MjctMjcuMjUxLTI2LjEzMi0xMS41NjEtNy42MDQtMjcuOTExLTE1LjgzMS00OS4wNTEtMjQuNjgtMTcuNTA2LTcuMTktMzAuNzItMTMuNjktMzkuNjM4LTE5LjQ5N1M1NC45NjkgOTMuNzU2IDQ5LjQ3OSA4Ny4zMTZjLTUuNDI2LTYuMzY2LTkuNjU4LTE1LjA3LTkuNjU4LTI0Ljg4NyAwLTkuMjY0IDIuMDc1LTE3LjIxNCA2LjIyMy0yMy44NUM1Ny4xNDIgMjQuMTggODcuMzMxIDM2Ljc4MiA5MS4xMiA2Mi45MjVjNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NyAxMi4wMyAyOC40MTVoMjAuNTMydi01NmMtNC40NzktNS45MjQtOS45NTUtMTAuNjMxLTE1LjkwOS0xNC4zNzMgMS42NC40NzkgMy4xOSAxLjAyMyA0LjYzOSAxLjY0IDYuNDk4IDIuNjI2IDEyLjE2OCA3LjMyNyAxNy4wMDcgMTQuMTAzIDQuODQgNi43NzUgOC44NSAxNi4yNDYgMTIuMDMgMjguNDE0IDAgMCA4LjQ4LS4xMjkgOC40OS0uMDAyLjQxNyA2LjQxNS0xLjc1NCA5LjQ1My00LjEyNCAxMi41NjEtMi40MTcgMy4xNy01LjE0NSA2Ljc5LTQuMDAzIDEzLjAwMyAxLjUwOCA4LjIwMyAxMC4xODQgMTAuNTk3IDE0LjYyMiA5LjMxMi0zLjMxOC0uNS01LjMxOC0xLjc1LTUuMzE4LTEuNzVzMS44NzYuOTk5IDUuNjUtMS4zNmMtMy4yNzYuOTU2LTEwLjcwNC0uNzk3LTExLjgtNi43NjMtLjk1OC01LjIwOC45NDYtNy4yOTUgMy40LTEwLjUxNCAyLjQ1NS0zLjIyIDUuMjg1LTYuOTU5IDQuNjg1LTE0LjQ4OWwuMDAzLjAwMmg4LjkyN3YtNTZjLTE1LjA3Mi0zLjg3MS0yNy42NTMtNi4zNi0zNy43NDctNy40NjVDMTE0LjI3OS41NTIgMTA0LjA0NiAwIDkzLjUzNyAwem03MC4zMjEgMTcuMzA5bC4yMzggNDAuMzA1YzEuMzE4IDEuMjI2IDIuNDQgMi4yNzggMy4zNDEgMy4xMDYgNC44NCA2Ljc3NSA4Ljg1IDE2LjI0NiAxMi4wMyAyOC40MTRIMjAwdi01NmMtNi42NzctNC41OTQtMTkuODM2LTEwLjQ3My0zNi4xNC0xNS44MjV6bS0yOC4xMiA1LjYwNWw4LjU2NSAxNy43MTdjLTExLjk3LTYuNDY3LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTd6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE3bDQuNDk0LTE3LjcxN3ptMTUuMjIyIDI0LjAwOWw4LjU2NSAxNy43MTZjLTExLjk3LTYuNDY2LTEzLjg0Ny05LjcxNy04LjU2NS0xNy43MTZ6bTIyLjc5NyAwYzIuNzcxIDggMS43ODcgMTEuMjUtNC40OTQgMTcuNzE2bDQuNDk0LTE3LjcxNnpNOTcuNDQgNDkuMTNsOC41NjUgMTcuNzE2Yy0xMS45Ny02LjQ2Ny0xMy44NDctOS43MTctOC41NjUtMTcuNzE2em0yMi43OTUgMGMyLjc3MiA3Ljk5OSAxLjc4OCAxMS4yNS00LjQ5MyAxNy43MTZsNC40OTMtMTcuNzE2eiIvPjwvc3ZnPg==)}.theme-nologo .Layout__content{background-image:none}
\ No newline at end of file
diff --git a/tgui/packages/tgui/public/tgui.bundle.js b/tgui/packages/tgui/public/tgui.bundle.js
index 4073d8523b25..803712038e51 100644
--- a/tgui/packages/tgui/public/tgui.bundle.js
+++ b/tgui/packages/tgui/public/tgui.bundle.js
@@ -1,5 +1,5 @@
-!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=231)}([function(e,t,n){"use strict";t.__esModule=!0;var o=n(233);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===o[e]||(t[e]=o[e]))}))},function(e,t,n){"use strict";t.__esModule=!0,t.useSharedState=t.useLocalState=t.useBackend=t.deleteLocalState=t.backendUpdate=t.backendSetSharedState=t.backendReducer=t.backendDeleteSharedState=void 0;var o=n(33),r=n(43);t.backendUpdate=function(e){return{type:"backend/update",payload:e}};var a=function(e,t){return{type:"backend/setSharedState",payload:{key:e,nextState:t}}};t.backendSetSharedState=a;var c=function(e){return{type:"backend/deleteSharedState",payload:e}};t.backendDeleteSharedState=c;t.backendReducer=function(e,t){var n=t.type,o=t.payload;if("backend/update"===n){var a=Object.assign({},e.config,o.config),c=Object.assign({},e.data,o.static_data,o.data),i=Object.assign({},e.shared);if(o.shared)for(var l=0,d=Object.keys(o.shared);l1?n-1:0),r=1;rn?n:e};t.clamp01=function(e){return e<0?0:e>1?1:e};t.scale=function(e,t,n){return(e-t)/(n-t)};t.round=function(e,t){return!e||isNaN(e)?e:(t|=0,a=(e*=n=Math.pow(10,t))>0|-(e<0),r=Math.abs(e%1)>=.4999999999854481,o=Math.floor(e),r&&(e=o+(a>0)),(r?e:Math.round(e))/n);var n,o,r,a};t.toFixed=function(e,t){return void 0===t&&(t=0),Number(e).toFixed(Math.max(t,0))};var o=function(e,t){return t&&e>=t[0]&&e<=t[1]};t.inRange=o;t.keyOfMatchingRange=function(e,t){for(var n=0,r=Object.keys(t);n=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n",apos:"'"};return e.replace(/ /gi,"\n").replace(/<\/?[a-z0-9-_]+[^>]*>/gi,"").replace(/&(nbsp|amp|quot|lt|gt|apos);/g,(function(e,n){return t[n]})).replace(/?([0-9]+);/gi,(function(e,t){var n=parseInt(t,10);return String.fromCharCode(n)})).replace(/?([0-9a-f]+);/gi,(function(e,t){var n=parseInt(t,16);return String.fromCharCode(n)}))};t.buildQueryString=function(e){return Object.keys(e).map((function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])})).join("&")}},function(e,t,n){"use strict";t.__esModule=!0,t.unit=t.halfUnit=t.computeBoxProps=t.computeBoxClassName=t.Box=void 0;var o=n(10),r=n(0),a=n(505),c=n(43),i=["as","className","children"];var l=function(e){return"string"==typeof e?e:"number"==typeof e?12*e+"px":void 0};t.unit=l;var d=function(e){return"string"==typeof e?e:"number"==typeof e?12*e*.5+"px":void 0};t.halfUnit=d;var u=function(e){return"string"==typeof e&&c.CSS_COLORS.includes(e)},s=function(e){return function(t,n){(0,o.isFalsy)(n)||(t[e]=n)}},m=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t(r))}},p=function(e,t){return function(n,r){(0,o.isFalsy)(r)||(n[e]=t)}},h=function(e,t,n){return function(r,a){if(!(0,o.isFalsy)(a))for(var c=0;c0&&(t.style=l),t};t.computeBoxProps=N;var b=function(e){var t=e.textColor||e.color,n=e.backgroundColor;return(0,o.classes)([u(t)&&"color-"+t,u(n)&&"color-bg-"+n])};t.computeBoxClassName=b;var V=function(e){var t=e.as,n=void 0===t?"div":t,o=e.className,c=e.children,l=function(e,t){if(null==e)return{};var n,o,r={},a=Object.keys(e);for(o=0;o=0||(r[n]=e[n]);return r}(e,i);if("function"==typeof c)return c(N(e));var d="string"==typeof o?o+" "+b(l):b(l),u=N(l);return(0,r.createVNode)(a.VNodeFlags.HtmlElement,n,d,c,a.ChildFlags.UnknownChildren,u)};t.Box=V,V.defaultHooks=o.pureComponentHooks},function(e,t,n){"use strict";var o=n(41);e.exports=function(e){return o(e.length)}},function(e,t,n){"use strict";var o=n(5),r=n(12),a=n(50),c=n(130),i=n(128);e.exports=function(e,t,n,l){var d=!!l&&!!l.unsafe,u=!!l&&!!l.enumerable,s=!!l&&!!l.noTargetGet,m=l&&l.name!==undefined?l.name:t;return r(n)&&c(n,m,l),e===o?(u?e[t]=n:i(t,n),e):(d?!s&&e[t]&&(u=!0):delete e[t],u?e[t]=n:a(e,t,n),e)}},function(e,t,n){"use strict";var o=n(60),r=n(7),a=n(85),c=n(19),i=n(23),l=n(91),d=r([].push),u=function(e){var t=1==e,n=2==e,r=3==e,u=4==e,s=6==e,m=7==e,p=5==e||s;return function(h,f,C,N){for(var b,V,g=c(h),v=a(g),y=o(f,C),x=i(v),_=0,k=N||l,L=t?k(h,x):n||m?k(h,0):undefined;x>_;_++)if((p||_ in v)&&(V=y(b=v[_],_,g),e))if(t)L[_]=V;else if(V)switch(e){case 3:return!0;case 5:return b;case 6:return _;case 2:d(L,b)}else switch(e){case 4:return!1;case 7:d(L,b)}return s?-1:r||u?u:L}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterReject:u(7)}},function(e,t,n){"use strict";var o=n(8),r=n(14),a=n(100),c=n(64),i=n(31),l=n(56),d=n(18),u=n(172),s=Object.getOwnPropertyDescriptor;t.f=o?s:function(e,t){if(e=i(e),t=l(t),u)try{return s(e,t)}catch(n){}if(d(e,t))return c(!r(a.f,e,t),e[t])}},function(e,t,n){"use strict";var o=n(5),r=n(12),a=n(71),c=o.TypeError;e.exports=function(e){if(r(e))return e;throw c(a(e)+" is not a function")}},function(e,t,n){"use strict";t.__esModule=!0,t.zipWith=t.zip=t.uniqBy=t.toKeyedArray=t.toArray=t.sortBy=t.reduce=t.map=t.filter=void 0;t.toArray=function(e){if(Array.isArray(e))return e;if("object"==typeof e){var t=Object.prototype.hasOwnProperty,n=[];for(var o in e)t.call(e,o)&&n.push(e[o]);return n}return[]};t.toKeyedArray=function(e,t){return void 0===t&&(t="key"),o((function(e,n){var o;return Object.assign(((o={})[t]=n,o),e)}))(e)};t.filter=function(e){return function(t){if(null===t&&t===undefined)return t;if(Array.isArray(t)){for(var n=[],o=0;oi)return 1}return 0};t.sortBy=function(){for(var e=arguments.length,t=new Array(e),n=0;n=0||(r[n]=e[n]);return r}var u=function(e){var t=e.className,n=e.direction,o=e.wrap,c=e.align,l=e.alignContent,u=e.justify,s=e.inline,m=e.spacing,p=void 0===m?0:m,h=e.spacingPrecise,f=void 0===h?0:h,C=d(e,i);return Object.assign({className:(0,r.classes)(["Flex",a.IS_IE8&&("column"===n?"Flex--ie8--column":"Flex--ie8"),s&&"Flex--inline",p>0&&"Flex--spacing--"+p,f>0&&"Flex--spacingPrecise--"+f,t]),style:Object.assign({},C.style,{"flex-direction":n,"flex-wrap":o,"align-items":c,"align-content":l,"justify-content":u})},C)};t.computeFlexProps=u;var s=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.Box,Object.assign({},u(e))))};t.Flex=s,s.defaultHooks=r.pureComponentHooks;var m=function(e){var t=e.className,n=e.grow,o=e.order,i=e.shrink,u=e.basis,s=void 0===u?e.width:u,m=e.align,p=d(e,l);return Object.assign({className:(0,r.classes)(["Flex__item",a.IS_IE8&&"Flex__item--ie8",t]),style:Object.assign({},p.style,{"flex-grow":n,"flex-shrink":i,"flex-basis":(0,c.unit)(s),order:o,"align-self":m})},p)};t.computeFlexItemProps=m;var p=function(e){return(0,o.normalizeProps)((0,o.createComponentVNode)(2,c.Box,Object.assign({},m(e))))};t.FlexItem=p,p.defaultHooks=r.pureComponentHooks,s.Item=p},function(e,t,n){"use strict";e.exports=!1},function(e,t,n){"use strict";var o=n(236),r=n(18),a=n(178),c=n(17).f;e.exports=function(e){var t=o.Symbol||(o.Symbol={});r(t,e)||c(t,e,{value:a.f(e)})}},function(e,t,n){"use strict";var o=n(7),r=n(32),a=n(20),c=/"/g,i=o("".replace);e.exports=function(e,t,n,o){var l=a(r(e)),d="<"+t;return""!==n&&(d+=" "+n+'="'+i(a(o),c,""")+'"'),d+">"+l+""+t+">"}},function(e,t,n){"use strict";var o=n(6);e.exports=function(e){return o((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},function(e,t,n){"use strict";var o,r,a,c=n(174),i=n(5),l=n(7),d=n(11),u=n(50),s=n(18),m=n(127),p=n(102),h=n(87),f=i.TypeError,C=i.WeakMap;if(c||m.state){var N=m.state||(m.state=new C),b=l(N.get),V=l(N.has),g=l(N.set);o=function(e,t){if(V(N,e))throw new f("Object already initialized");return t.facade=e,g(N,e,t),t},r=function(e){return b(N,e)||{}},a=function(e){return V(N,e)}}else{var v=p("state");h[v]=!0,o=function(e,t){if(s(e,v))throw new f("Object already initialized");return t.facade=e,u(e,v,t),t},r=function(e){return s(e,v)?e[v]:{}},a=function(e){return s(e,v)}}e.exports={set:o,get:r,has:a,enforce:function(e){return a(e)?r(e):o(e,{})},getterFor:function(e){return function(t){var n;if(!d(t)||(n=r(t)).type!==e)throw f("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){"use strict";var o=Math.ceil,r=Math.floor;e.exports=function(e){var t=+e;return t!=t||0===t?0:(t>0?r:o)(t)}},function(e,t,n){"use strict";var o=n(40),r=Math.min;e.exports=function(e){return e>0?r(o(e),9007199254740991):0}},function(e,t,n){"use strict";var o=n(5),r=n(18),a=n(12),c=n(19),i=n(102),l=n(140),d=i("IE_PROTO"),u=o.Object,s=u.prototype;e.exports=l?u.getPrototypeOf:function(e){var t=c(e);if(r(t,d))return t[d];var n=t.constructor;return a(n)&&t instanceof n?n.prototype:t instanceof u?s:null}},function(e,t,n){"use strict";t.__esModule=!0,t.timeAgo=t.getGasLabel=t.getGasColor=t.UI_UPDATE=t.UI_INTERACTIVE=t.UI_DISABLED=t.UI_CLOSE=t.RADIO_CHANNELS=t.CSS_COLORS=t.COLORS=void 0;t.UI_INTERACTIVE=2;t.UI_UPDATE=1;t.UI_DISABLED=0;t.UI_CLOSE=-1;t.COLORS={department:{command:"#526aff",security:"#CF0000",medical:"#009190",science:"#993399",engineering:"#A66300",supply:"#9F8545",service:"#80A000",centcom:"#78789B",other:"#C38312"},damageType:{oxy:"#3498db",toxin:"#2ecc71",burn:"#e67e22",brute:"#e74c3c"}};t.CSS_COLORS=["black","white","red","orange","yellow","olive","green","teal","blue","violet","purple","pink","brown","grey","good","average","bad","label"];t.RADIO_CHANNELS=[{name:"Syndicate",freq:1213,color:"#a52a2a"},{name:"SyndTeam",freq:1244,color:"#a52a2a"},{name:"Red Team",freq:1215,color:"#ff4444"},{name:"Blue Team",freq:1217,color:"#3434fd"},{name:"Response Team",freq:1345,color:"#2681a5"},{name:"Special Ops",freq:1341,color:"#2681a5"},{name:"Supply",freq:1347,color:"#b88646"},{name:"Service",freq:1349,color:"#6ca729"},{name:"Science",freq:1351,color:"#c68cfa"},{name:"Command",freq:1353,color:"#5177ff"},{name:"Procedure",freq:1339,color:"#F70285"},{name:"Medical",freq:1355,color:"#57b8f0"},{name:"Medical(I)",freq:1485,color:"#57b8f0"},{name:"Engineering",freq:1357,color:"#f37746"},{name:"Security",freq:1359,color:"#dd3535"},{name:"Security(I)",freq:1475,color:"#dd3535"},{name:"AI Private",freq:1343,color:"#d65d95"},{name:"Common",freq:1459,color:"#1ecc43"}];var o=[{id:"o2",name:"Oxygen",label:"O\u2082",color:"blue"},{id:"n2",name:"Nitrogen",label:"N\u2082",color:"red"},{id:"co2",name:"Carbon Dioxide",label:"CO\u2082",color:"grey"},{id:"plasma",name:"Plasma",label:"Plasma",color:"pink"},{id:"water_vapor",name:"Water Vapor",label:"H\u2082O",color:"grey"},{id:"nob",name:"Hyper-noblium",label:"Hyper-nob",color:"teal"},{id:"n2o",name:"Nitrous Oxide",label:"N\u2082O",color:"red"},{id:"no2",name:"Nitryl",label:"NO\u2082",color:"brown"},{id:"tritium",name:"Tritium",label:"Tritium",color:"green"},{id:"bz",name:"BZ",label:"BZ",color:"purple"},{id:"stim",name:"Stimulum",label:"Stimulum",color:"purple"},{id:"pluox",name:"Pluoxium",label:"Pluoxium",color:"blue"},{id:"miasma",name:"Miasma",label:"Miasma",color:"olive"},{id:"hydrogen",name:"Hydrogen",label:"H\u2082",color:"white"},{id:"ab",name:"Agent B",label:"Agent B",color:"purple"}];t.getGasLabel=function(e,t){var n=String(e).toLowerCase(),r=o.find((function(e){return e.id===n||e.name.toLowerCase()===n}));return r&&r.label||t||e};t.getGasColor=function(e){var t=String(e).toLowerCase(),n=o.find((function(e){return e.id===t||e.name.toLowerCase()===t}));return n&&n.color};t.timeAgo=function(e,t){if(e>t)return"in the future";var n=(t/=10)-(e/=10);if(n>3600){var o=Math.round(n/3600);return o+" hour"+(1===o?"":"s")+" ago"}if(n>60){var r=Math.round(n/60);return r+" minute"+(1===r?"":"s")+" ago"}var a=Math.round(n);return a+" second"+(1===a?"":"s")+" ago"}},function(e,t,n){"use strict";function o(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(n)return(n=n.call(e)).next.bind(n);if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n1?r-1:0),i=1;i1?o-1:0),a=1;a=0||(r[n]=e[n]);return r}(e,i),b=C?"":":";return(0,o.createVNode)(1,"tr",(0,r.classes)(["LabeledList__row",t]),[(0,o.createComponentVNode)(2,a.Box,{as:"td",color:l,verticalAlign:s,className:(0,r.classes)(["LabeledList__cell","LabeledList__label"]),children:n?n+b:null}),(0,o.normalizeProps)((0,o.createComponentVNode)(2,a.Box,Object.assign({as:"td",color:d,textAlign:u,verticalAlign:s,className:(0,r.classes)(["LabeledList__cell","LabeledList__content"]),colSpan:m?undefined:2},N,{children:[p,h]}))),m&&(0,o.createVNode)(1,"td","LabeledList__cell LabeledList__buttons",m,0)],0)};t.LabeledListItem=d,d.defaultHooks=r.pureComponentHooks;var u=function(e){var t=e.size?(0,a.unit)(Math.max(0,e.size-1)):0;return(0,o.createVNode)(1,"tr","LabeledList__row",(0,o.createVNode)(1,"td",null,(0,o.createComponentVNode)(2,c.Divider),2,{colSpan:3,style:{"padding-top":t,"padding-bottom":t}}),2)};t.LabeledListDivider=u,u.defaultHooks=r.pureComponentHooks,l.Item=d,l.Divider=u},function(e,t,n){"use strict";var o=n(7),r=o({}.toString),a=o("".slice);e.exports=function(e){return a(r(e),8,-1)}},function(e,t,n){"use strict";var o=n(7);e.exports=o({}.isPrototypeOf)},function(e,t,n){"use strict";var o=n(84),r=Function.prototype,a=r.apply,c=r.call;e.exports="object"==typeof Reflect&&Reflect.apply||(o?c.bind(a):function(){return c.apply(a,arguments)})},function(e,t,n){"use strict";var o=n(29);e.exports=o("navigator","userAgent")||""},function(e,t,n){"use strict";var o=n(8),r=n(17),a=n(64);e.exports=o?function(e,t,n){return r.f(e,t,a(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){"use strict";var o=n(40),r=Math.max,a=Math.min;e.exports=function(e,t){var n=o(e);return n<0?r(n+t,0):a(n,t)}},function(e,t,n){"use strict";var o,r=n(9),a=n(134),c=n(132),i=n(87),l=n(177),d=n(129),u=n(102),s=u("IE_PROTO"),m=function(){},p=function(e){return"