html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {margin: 0;padding: 0;border: 0;font-size: 100%;font: inherit;vertical-align: baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}ol, ul {list-style: none;}blockquote, q {quotes: none;}blockquote:before, blockquote:after,q:before, q:after {content: '';content: none;}table {border-collapse: collapse;border-spacing: 0;}

@font-face {
	font-family: 'Azbuka Pro';
	font-weight: bold;
	src: url('/css/fonts/AzbukaPro-Heavy.woff2') format('woff2'),
			url('/css/fonts/AzbukaPro-Heavy.woff') format('woff');
}

html {
	position: fixed;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

body {
	color: #2d2926;
	background-color: #ffda00;
	font-family: "Azbuka Pro","Segoe UI",Avenir,Helvetica,Arial,sans-serif;
	font-weight: bold;
	font-size: 14pt;
	letter-spacing: .3px;
	text-transform: uppercase;
	min-height: 100%;
	line-height: 1;
	user-select: none;
	-ms-user-select: none;
	-webkit-user-select: none;
	height: 100%;
	overflow: hidden;
}

button {
	font-weight: bold;
	font-size: 1.3em;
	min-height: 1.5em;
	min-width: 5em;
}

select, button {
	font-family: "Azbuka Pro","Segoe UI",Avenir,Helvetica,Arial,sans-serif;
	font-size: 1.3em;
	text-align: center;
	color: #2d2926;
	background-color: #f0f0f0;
	min-height: 1.7em;
	margin: 0.4em;
}

button, .bottomsection td {
 	background-color: #f0f0f0;
	text-transform: uppercase;
	overflow: hidden;
	border: 2px solid #2d2926;
	border-radius: 10px;
	box-shadow: 3px 3px 0 0 #0000007f;
}

#texture {
	background-image: url("/content/bg.png");
	background-repeat: repeat;
	z-index: -100;
	width: 100%;
	height: 100%;
	position: fixed;
}

#intro {
	width: 100%;
	height: 100%;
}

#intro p {
	font-size: 1.2em;
	padding: 0.7em;
	line-height: normal;
}

#intro p b {
	font-weight: bold;
}

#topsection {
	display: table;
}

#content {
	width: 100%;
	height: 100%;
	max-width: 420px;
	min-height: 480px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
}

#splashscreen, #bottomtexture {
	width: 100%;
	height: 100%;
}

.logo {
	width: 100%;
}

#pavilionlist button {
	min-width: 80%;
}

#pavilionlist button.inprogress {
	background-color: #f1be48;
}

#closed, #gate {
	position: relative;
	top: 30%;
}

.formlabel{
    display: inline-block;
    width: 150px;
    text-align: right;
	position: relative;
	top: 1.3px;
}

#startgamename {
	font-size: 1.7em !important;
	padding: 0 !important;
}

#pavilionlogo {
	position: relative;
	text-align: center;
	width: 80%;
	max-width: 320px;
	margin-left: auto;
	margin-right: auto;
	background-color: #f0f0f0;
}

#pavilionlogo img {
	width: 100%;
	height: auto;
}

.insetshadow {
	position: absolute;
	width: 100%;
	height: 100%;
	box-shadow: inset 0 6px 1px 0 #777777;
	border-radius: 12px;
	top: 0;
	left: 0;
}

#startgame button {
	min-width: 7em;
}

#phone {
	width: 100%;
	height: 100%;
	min-height: 440px;
	max-height: 824px;
	position: relative;
	border: 0;
	margin-left: auto;
	margin-right: auto;
	background-image: none;
	background-size: 100% auto;
	background-position: center center;
	background-repeat: no-repeat;
}

#phone #exit {
	text-align: right;
	padding: 3px;
}

/* Top "Content" Area */
.topsection {
	width: 100%;
	position: relative;
	text-align: center;
	vertical-align: middle;
	padding: 0;
	border: 0;
	margin: 0;
}

#fulltext {
	display: table-cell;
	font-size: 1.25em;
	line-height: normal;
	color: #000;
	vertical-align: middle;
	padding-left: 1em;
	padding-right: 1em;
}

#fulltext p {
	padding-top: 10px;
}

#still, #loader, #cutscene {
	width: 90%;
	max-width: 320px;
	margin-left: auto;
	margin-right: auto;
}

/*
#cutscene {
	box-shadow: 0px 0px 4px 2px #2d2926;
}
*/

#stillimage, #stilloverlay, #imageloader {
	width: 100%;
	height: auto;
	display: block;
}

/*
#stillimage {
	box-shadow: 0px 0px 4px 2px #2d2926;
}
*/

#loader {
	background-image: url("/content/ui_waiting.gif");
	background-position: center;
	background-repeat: no-repeat;
}

#still {
	box-sizing: border-box;
	left: 0;
	right: 0;
	position: relative;
}

#still, #cutscene {
	margin-top: 16px;
}

#stilloverlay {
	position: absolute;
	z-index: 10;
	left: 0;
	top: 0;
}

.progress {
	height: 14px;
}
#progresswrapper {
	width: 50%;
	border: 1px solid #000;
	padding: 2px;
	margin: 10px auto;
	overflow: hidden;
	position: relative;
}
#progressbar {
	position: absolute;
	width: 0;
	background-image: url("/content/progress.png");
}
#overlayholder {
	position: absolute;
	left: 0; right: 0; bottom: 0; top: 0;
}
#overlay {
	position: relative;
	top: 0px;
}

.rounded {
	overflow: hidden;
	border-radius: 16px;
}

#options {
	width: 100%;
	text-align: center;
	vertical-align: middle;
}
#options table {
	width: 100%;
	margin: 10px 0;
	padding: 0 10px;
	border-collapse: separate;
	border-spacing: 0 8px;
}
#options td {
	height: 45px;
	width: 90%;
	text-align: center;
	vertical-align: middle;
	font-size: 1em;
	color: #2d2926;
	background-color: #f0f0f0;
	border: 1px solid #2d2926;
	box-shadow: 2px 2px 0 0 #0000007f;
	margin: 8px;
	padding: 0;
}
#enter {
	text-align: center;
	max-width: 320px;
	margin: auto;
	padding-top: 150px;

}
#enter img {
	height: 72px;
	width: 72px;
}
#birthday {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
#birthday select {
	text-align: center;
	vertical-align: middle;
	color: #000;
	border-color: #000;
	margin: 10px 10px;
	height: 40px;
	width: 80%;
	font-size: 1em;
}

/* Middle "Caption" Area */
.midsection {
	text-align: center;
	vertical-align: middle;
	margin: 10px 0 0 0;
	border: 0;
}
#caption {
	overflow-y: hidden;
	font-size: 1.2em;
	line-height: normal;
	color: #000;
	text-align: center;
	vertical-align: middle;
	padding: 0 20px;
	margin: 0;
	border: 0;
}

/* Bottom "Button" Area */

#splashscreen, #bottomtexture, .bottomsection {
	background-image: url("/content/button_bg.png");
}

#splashscreen div, .bottomsection {
	border-top: 2px solid #000;
	border-image: linear-gradient(to right, #00000000, 15%, #000000, 85%, #00000000) 1%;
	box-shadow: 0 -6px #ffda00;
}

.bottomsection {
	left: 0;
	right: 0;
	height: 36px;
	text-align: center;
	vertical-align: middle;
	padding: 4px 0 8px 0;
	margin: 0 auto;
	position: absolute;
	bottom: 0;
	z-index: 20;
}
.bottomsection table {
	width: 100%;
	height: 100%;
	border-collapse: separate;
	border-spacing: 8px 0;
}
.bottomsection td {
	width: 35%;
	height: 100%;
	margin-left: 5px;
	margin-right: 5px;
	vertical-align: middle;
	text-align: center;
	font-size: 1em;
	font-weight: bold;
	color: #2d2926;
}

#okbutton {
	width: 30%;
}

button.done, td.disabled {
	color: #3b3f44;
	background-color: #999999;
}

.ui_cn {
	background: #266d67;
}
.ui_de {
	background: #df7a1c;
}
.ui_fr {
	background: #ca5553;
}
.ui_jp {
	background: #0b91ff;
}
.ui_mx {
	background: #c7a00c;
}
.ui_no {
	background: #2b8709;
}
.ui_uk {
	background: #834c9c;
}

#partysize {
	position: relative;
	top: 20%;
}

.partysizebuttons {
	display: grid;
	grid-template-rows: auto auto auto;
	grid-template-columns: auto auto auto;
	gap: 4px;
	padding: 4px;
}

.partysizebutton {
	background-color: #ffffff;
	min-width: 0px;
	min-height: 0px;
	width: 84px;
	height: 84px;
	padding: 2px;
}

.partysizebuttonimage {
	width: 64px;
	height: 64px;
	vertical-align: middle;
}

.debugmessage
{
	font-size:12px;
	position:absolute;
	vertical-align:text-bottom;
	width:100%;
	top:-10px;
	left:50%;
	transform:translate(-50%,-100%);
    color:white;
    text-shadow:
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;  
}

.terminal_container
{
	position: fixed; /* Sit on top of the page content */
	display: inline; /* Other content not aligned by this */
	width: auto; /* Half width (cover the whole page) */
	height: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100; /* Specify a stack order in case you're using a different order for other elements */
	cursor: pointer; /* Add a pointer on hover */
}

#terminalopenclosebutton
{
	padding: 3px;
}

.terminal_close
{
	position: fixed; /* Sit on top of the page content */
	display: inline; /* Other content not aligned by this */
	width: 32px; /* Half width (cover the whole page) */
	height: 32px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100; /* Specify a stack order in case you're using a different order for other elements */
	cursor: pointer; /* Add a pointer on hover */
}

.terminal_open
{
	position: fixed; /* Sit on top of the page content */
	display: inline; /* Hidden by default */
	width: 100%; /* Full width (cover the whole page) */
	height: 100%; /* Full height (cover the whole page) */
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5); /* Black background with opacity */
	z-index: 100; /* Specify a stack order in case you're using a different order for other elements */
	cursor: pointer; /* Add a pointer on hover */
}

#footer {
	z-index: 200;
	font-size:10px;
	position:absolute;
	vertical-align:text-bottom;
	width:100%;
	bottom:0px;
    color:#FFF;
    text-shadow:
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;
}

#version_l
{
	float: left;
	text-align: left;
	padding: 1px;
}

#version_r
{
	float: right;
	text-align: right;
	padding: 1px;
}

.rainbow-btn {
	background: repeating-linear-gradient(105deg,
	  /* Base gradient stops */
	  #fda085, #fda085, #fda085, #f6d365, #f6d365, #f6d365, #1de840, #1de840, #1ddde8, #1ddde8, #1ddde8, #dd00f3, #dd00f3, #FF00FF,
	  /* Repeat your base gradient stops */
	  #fda085, #fda085, #fda085, #f6d365, #f6d365, #f6d365, #1de840, #1de840, #1ddde8, #1ddde8, #1ddde8, #dd00f3, #dd00f3, #FF00FF,
	  /* Repeat your first gradient stop */
	  #fda085);
	background-size: 200% 200%;
	animation: rainbow 3.0s linear infinite;
  }
  @keyframes rainbow { 
	  0% { background-position: 100% 100% }
	100% { background-position:   0%   0% }
  }