/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/***************************************************************************
                    Header / Footer
                    NavigationBar
***************************************************************************/
.ui-bar-s {
  border: none;
  background: #edebe4;
  /* Header Background */

  color: #252525;
  font-family: Tizen, Helvetica;
  font-weight: bold;
  font-size: 1.2727272727272727rem;
}
.ui-bar-s .ui-link-inherit {
  color: #252525;
}
.ui-bar-s > .ui-btn.ui-btn-back,
.ui-bar-s > .ui-btn.ui-btn-footer-down {
  background: transparent;
  position: absolute;
  right: 0px;
}
.ui-bar-s > .ui-btn.ui-btn-back .ui-icon-header-back-btn,
.ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon-header-back-btn {
  top: 0.36363636363636365rem;
  left: auto;
  right: 0.5909090909090909rem;
  margin-top: 0px;
}
.ui-bar-s > .ui-btn.ui-btn-footer-down {
  border: none;
  box-shadow: none;
}
.ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon {
  top: 0.36363636363636365rem;
  margin-top: 0px;
}
/* Header style */
.ui-header.ui-bar-s {
  position: fixed;
  top: 0px;
  min-height: 2.1818181818181817rem;
  /* header button position : need to press area more... */

}
.ui-header.ui-bar-s .ui-title {
  display: inline-block;
  color: #252525;
  min-height: 1.1363636363636365rem;
  max-height: 1.4090909090909092rem;
  /* temporary UX strange */

  font-size: 1.1363636363636365rem;
  font-weight: 500;
  /* tizen font weight tuning */

  text-overflow: ellipsis;
  text-shadow: 0px 2px rgba(250, 250, 250, 0.75);
  overflow: hidden;
  white-space: nowrap;
  outline: 0 !important;
  text-align: left;
  margin: 0.4545454545454546rem 0.5909090909090909rem 0.4090909090909091rem 0.5909090909090909rem;
  /* text align center tuning */

}
.ui-header.ui-bar-s > .ui-btn .ui-btn-inner.ui-btn-icon-only,
.ui-header.ui-bar-s > .naviframe-button.ui-btn .ui-btn-inner.ui-btn-icon-only {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
}
.ui-header.ui-bar-s > .ui-btn .ui-btn-inner.ui-btn-icon-only .ui-icon,
.ui-header.ui-bar-s > .naviframe-button.ui-btn .ui-btn-inner.ui-btn-icon-only .ui-icon {
  top: 0px;
  left: 0px;
}
.ui-header.ui-bar-s > .naviframe-button.ui-btn .ui-btn-inner .ui-icon {
  margin-top: 0px;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon-notext) .ui-btn-inner.ui-btn-icon-only,
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon-notext) .ui-btn-inner.ui-btn-icon-only {
  padding-left: 0px;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only),
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only) {
  width: 2.8181818181818183rem;
  height: 2.1818181818181817rem;
  padding: 0px;
  top: 0px;
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: #8a8a8a;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only) .ui-btn-inner,
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only) .ui-btn-inner {
  padding: 0;
  padding-top: 0rem;
  padding-bottom: 0rem;
  margin-top: 0.5454545454545454rem;
  margin-bottom: 0.5454545454545454rem;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only) .ui-btn-inner .ui-btn-text,
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only) .ui-btn-inner .ui-btn-text {
  font-size: 0.7272727272727273rem;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only).ui-btn-down-s,
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only).ui-btn-down-s {
  background-color: #5787c2;
}
.ui-header.ui-bar-s > .ui-btn.ui-btn-back,
.ui-header.ui-bar-s > .ui-btn.ui-btn-footer-down {
  right: 0.5909090909090909rem;
}
.ui-header.ui-bar-s > .ui-btn.ui-btn-back .ui-icon-header-back-btn,
.ui-header.ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon-header-back-btn {
  left: 0px;
}
.ui-header.ui-bar-s img {
  position: absolute;
  display: inline-block;
  height: 1rem;
  width: 1rem;
  margin-left: 0.5909090909090909rem;
  margin-top: 0.5909090909090909rem;
}
.ui-header.ui-bar-s .ui-title-text-sub {
  position: absolute;
  top: 1.3181818181818181rem;
  left: 0.5909090909090909rem;
  font-size: 0.7272727272727273rem;
  font-weight: 500;
  text-shadow: 0px 2px rgba(250, 250, 250, 0.75);
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.ui-header.ui-bar-s > .ui-btn,
.ui-header.ui-bar-s > .naviframe-button.ui-btn {
  position: absolute;
  top: 0.4090909090909091rem;
  font-size: 0.8181818181818182rem;
  margin-top: 0px;
  height: 1.5454545454545454rem;
  width: 1.5454545454545454rem;
  padding-left: 0.5909090909090909rem;
  padding-right: 0.5909090909090909rem;
  background: transparent;
  color: #252525;
}
.ui-header.ui-bar-s.ui-title-tabbar > .ui-btn {
  top: 0.36363636363636365rem;
}
.ui-header.ui-bar-s > .ui-btn.ui-btn-icon_only,
.ui-header.ui-bar-s > .naviframe-button.ui-btn.ui-btn-icon_only {
  top: 0.36363636363636365rem;
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: #8a8a8a;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.ui-header.ui-bar-s .ui-btn-right-0 {
  right: 0rem;
}
.ui-header.ui-bar-s .ui-btn-right-1 {
  right: 2.6363636363636362rem;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only):nth-child(2),
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(2) {
  right: 0rem;
}
.ui-header.ui-bar-s > .ui-btn:not(.ui-btn-icon_only):nth-child(3),
.ui-header.ui-bar-s > .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(3) {
  right: 2.8181818181818183rem;
}
.ui-header.ui-bar-s > img + h1 {
  padding-left: 1.3636363636363638rem;
}
.ui-header.ui-bar-s > img + h1 + .ui-btn:not(.ui-btn-icon_only):nth-child(3),
.ui-header.ui-bar-s > img + h1 + .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(3) {
  right: 0rem;
}
.ui-header.ui-bar-s > img + h1 + .ui-btn:not(.ui-btn-icon_only):nth-child(3) + .ui-btn:not(.ui-btn-icon_only),
.ui-header.ui-bar-s > img + h1 + .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(3) + .naviframe-button.ui-btn:not(.ui-btn-icon_only) {
  right: 2.8181818181818183rem;
}
.ui-header.ui-bar-s > img + h1 + span.ui-title-text-sub + .ui-btn:not(.ui-btn-icon_only):nth-child(4),
.ui-header.ui-bar-s > img + h1 + span.ui-title-text-sub + .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(4) {
  right: 0rem;
}
.ui-header.ui-bar-s > img + h1 + span.ui-title-text-sub + .ui-btn:not(.ui-btn-icon_only):nth-child(4) + .ui-btn:not(.ui-btn-icon_only),
.ui-header.ui-bar-s > img + h1 + span.ui-title-text-sub + .naviframe-button.ui-btn:not(.ui-btn-icon_only):nth-child(4) + .naviframe-button.ui-btn:not(.ui-btn-icon_only) {
  right: 2.8181818181818183rem;
}
.ui-header.ui-bar-s > .ui-btn.ui-btn-down-s {
  background: rgba(14, 102, 170, 0.1);
  color: #252525;
}
.ui-header.ui-bar-s.ui-title-multiline img {
  margin-top: 0.6818181818181819rem;
  /* tuning */

}
.ui-header.ui-bar-s.ui-title-multiline .ui-title {
  min-height: 1.0909090909090908rem;
  max-height: 1.0909090909090908rem;
  /* temporary UX strange */

  font-size: 1rem;
  margin: 0.18181818181818182rem 0.5909090909090909rem 1rem 0.5909090909090909rem;
}
.ui-header.ui-bar-s.ui-title-multiline img + .ui-title + .ui-title-text-sub {
  left: 1.9090909090909092rem;
}
.ui-footer.ui-bar-s {
  height: 2.2272727272727275rem;
  text-align: center;
  bottom: 0px;
  background: #dedcd5;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-back,
.ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down,
.ui-footer.ui-bar-s > [data-icon="naviframe-more"] {
  background: transparent;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-back > .ui-btn-icon-only,
.ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down > .ui-btn-icon-only,
.ui-footer.ui-bar-s > [data-icon="naviframe-more"] > .ui-btn-icon-only {
  width: 2.5454545454545454rem;
  height: 2.2272727272727275rem;
  padding: 0px;
  -webkit-box-shadow: none /* temp code */
;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-back,
.ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down {
  top: 0px;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon {
  left: auto;
  right: 0.5909090909090909rem;
}
.ui-footer.ui-bar-s [data-icon="naviframe-more"] {
  position: absolute;
  left: 0rem;
  top: 0rem;
  box-shadow: none;
  border-width: 0px;
}
.ui-footer.ui-bar-s [data-icon="naviframe-more"] .ui-icon-naviframe-more {
  left: 0.5909090909090909rem;
  top: 0.36363636363636365rem;
  margin-top: 0px;
}
.ui-footer.ui-bar-s [data-icon="naviframe-more"] .ui-btn-inner {
  border: none;
  background: transparent;
  box-shadow: none;
}
.ui-footer.ui-bar-s > [data-role="button"] {
  font-size: 0.9090909090909092rem;
  font-weight: bold;
  color: #3a3a3a;
  background-image: none;
  border-width: 0px;
}
.ui-footer.ui-bar-s > [data-role="button"] > .ui-btn-inner {
  padding-top: 0px;
  padding-bottom: 0px;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] {
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.2272727272727273rem;
  margin-bottom: 0.2272727272727273rem;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] {
  background: transparent;
  vertical-align: middle;
  border-style: solid;
  border-color: #8a8a8a;
  border-top-width: 0px;
  border-bottom-width: 0px;
  border-left-width: 1px;
  border-right-width: 1px;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border-radius: 0px !important;
  box-shadow: none;
  padding: 0px;
  margin-left: -0.18181818181818182rem;
  margin-right: -0.2272727272727273rem;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-btn-hover-s,
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-btn-up-s {
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-btn-down-s,
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] .ui-btn-active-s {
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-btn-down-s .ui-btn-inner,
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] .ui-btn-active-s .ui-btn-inner {
  background: #dedcd5;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-btn-down-s .ui-btn-inner .ui-btn-text,
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] .ui-btn-active-s .ui-btn-inner .ui-btn-text {
  color: #252525;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] > .ui-btn-inner {
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border: 0px solid;
  box-shadow: none;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] .ui-btn-text {
  vertical-align: middle;
  font-size: 0.7727272727272727rem;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-corner-right {
  border-right-width: 0px;
}
.ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"].ui-corner-left {
  border-left-width: 0px;
}
.ui-footer.ui-bar-s > [data-role="button"]:not([data-icon="naviframe-more"]) {
  top: 0px;
  padding: 0.5454545454545454rem 0px;
}
.ui-footer.ui-bar-s > p {
  margin-top: 0.36363636363636365rem;
  margin-bottom: 0.36363636363636365rem;
}
.ui-footer.ui-bar-s > h1,
.ui-footer.ui-bar-s h2,
.ui-footer.ui-bar-s h3,
.ui-footer.ui-bar-s h4,
.ui-footer.ui-bar-s h5,
.ui-footer.ui-bar-s h6 {
  display: inline-block;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-box-s {
  box-shadow: none;
  bottom: 0px;
  -o-border-radius: 0em ! important;
  -ms-border-radius: 0em ! important;
  -moz-border-radius: 0em ! important;
  -webkit-border-radius: 0em ! important;
  border-radius: 0em ! important;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-box-s .ui-btn-inner {
  -o-border-radius: 0em ! important;
  -ms-border-radius: 0em ! important;
  -moz-border-radius: 0em ! important;
  -webkit-border-radius: 0em ! important;
  border-radius: 0em ! important;
}
.ui-footer.ui-bar-s > .ui-btn.ui-btn-down-s.ui-btn-box-s:not([data-icon="naviframe-more"]) {
  background-color: #0e66aa !important;
}
.ui-footer.ui-bar-s > .ui-footer-btn-border > .ui-btn-inner {
  border-left: 2px solid rgba(138, 138, 138, 0.2);
}
/***************************************************************************
                    Content Top calculate
***************************************************************************/
.ui-content {
  position: relative;
  top: 0;
}
/***************************************************************************
                    Content Top calculate
***************************************************************************/
.ui-body-s {
  border: 1px solid #2a2a2a;
  background: #f8f6ef;
  color: #000000;
  font-weight: normal;
  font-family: Tizen, Helvetica;
}
.ui-body-s .ui-link-inherit {
  color: #fff;
}
.ui-body-s .ui-link {
  /* ui-body-link */

  color: #2489CE;
  font-weight: bold;
}
.ui-body-s .ui-link:hover {
  color: #2489CE;
}
.ui-body-s .ui-link:active {
  color: #2489CE;
}
.ui-body-s .ui-link:visited {
  color: #2489CE;
}
.ui-btn-box-s {
  padding: 0.045454545454545456rem;
}
.ui-btn.ui-btn-corner-all.ui-btn-box-s .ui-btn-inner {
  -o-border-radius: 1.2rem;
  -ms-border-radius: 1.2rem;
  -moz-border-radius: 1.2rem;
  -webkit-border-radius: 1.2rem;
  border-radius: 1.2rem;
}
.ui-ctxpopup .ui-btn-box-s.ui-btn-up-s,
.ui-ctxpopup .ui-btn-box-s.ui-btn-hover-s {
  background: transparent !important;
  border: none;
  box-shadow: none;
  padding: 0;
  color: white !important;
}
.ui-ctxpopup .ui-btn-box-s.ui-btn-down-s {
  background: #2a89c2 !important;
  border: none;
  box-shadow: none;
  padding: 0;
  color: white !important;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-ctxpopup .ui-btn-box-s .ui-btn-inner {
  background: transparent ! important;
  box-shadow: none;
  border: none;
}
.ui-ctxpopup .ui-btn-down-s {
  background: #2a89c2 !important;
}
.ui-header .ui-btn-box-s,
.ui-footer .ui-btn-box-s,
.ui-btn-back.ui-btn-up-s,
.ui-btn-back.ui-btn-hover-s,
.ui-btn-back.ui-btn-down-s,
.ui-btn-footer-down.ui-btn-up-s,
.ui-btn-footer-down.ui-btn-hover-s,
.ui-btn-footer-down.ui-btn-down-s,
.ui-popup-container .ui-btn-box-s {
  font-weight: normal;
  -o-border-radius: 0.9 rem;
  -ms-border-radius: 0.9 rem;
  -moz-border-radius: 0.9 rem;
  -webkit-border-radius: 0.9 rem;
  border-radius: 0.9 rem;
}
.ui-btn-box-s.ui-btn-hover-s.ui-btn-corner-circle {
  -o-border-radius: 1em ! important;
  -ms-border-radius: 1em ! important;
  -moz-border-radius: 1em ! important;
  -webkit-border-radius: 1em ! important;
  border-radius: 1em ! important;
}
.ui-btn-box-s.ui-btn-hover-s.ui-btn-round {
  -o-border-radius: 1.2em ! important;
  -ms-border-radius: 1.2em ! important;
  -moz-border-radius: 1.2em ! important;
  -webkit-border-radius: 1.2em ! important;
  border-radius: 1.2em ! important;
}
.ui-btn-box-s.ui-btn-down-s .ui-btn-inner {
  /*	background: @color_button_press;*/

  color: #ffffff;
}
.ui-btn-up-s,
.ui-btn-hover-s,
.ui-btn-down-s {
  font-family: Tizen, Helvetica;
  text-decoration: none;
}
/*
/* Structure */
/* links within "buttons" 
-----------------------------------------------------------------------------------------------------------*/
a.ui-link-inherit {
  text-decoration: none !important;
}
/* Active class used as the "on" state across all themes
-----------------------------------------------------------------------------------------------------------*/
/* button default color for active state */
.ui-btn-active {
  /* global-active */

  color: #3a3a3a;
  cursor: pointer;
  text-decoration: none;
  background: #007ad8;
  outline: none;
}
.ui-btn-active a.ui-link-inherit {
  color: #3a3a3a;
}
/* corner rounding classes
-----------------------------------------------------------------------------------------------------------*/
.ui-corner-tl {
  -moz-border-radius-topleft: 0.3em;
  -webkit-border-top-left-radius: 0.3em;
  border-top-left-radius: 0.3em;
}
.ui-corner-tr {
  -moz-border-radius-topright: 0.3em;
  -webkit-border-top-right-radius: 0.3em;
  border-top-right-radius: 0.3em;
}
.ui-corner-bl {
  -moz-border-radius-bottomleft: 0.3em;
  -webkit-border-bottom-left-radius: 0.3em;
  border-bottom-left-radius: 0.3em;
}
.ui-corner-br {
  -moz-border-radius-bottomright: 0.3em;
  -webkit-border-bottom-right-radius: 0.3em;
  border-bottom-right-radius: 0.3em;
}
.ui-corner-top {
  -moz-border-radius-topleft: 0.3em;
  -webkit-border-top-left-radius: 0.3em;
  border-top-left-radius: 0.3em;
  -moz-border-radius-topright: 0.3em;
  -webkit-border-top-right-radius: 0.3em;
  border-top-right-radius: 0.3em;
}
.ui-corner-bottom {
  -moz-border-radius-bottomleft: 0.3em;
  -webkit-border-bottom-left-radius: 0.3em;
  border-bottom-left-radius: 0.3em;
  -moz-border-radius-bottomright: 0.3em;
  -webkit-border-bottom-right-radius: 0.3em;
  border-bottom-right-radius: 0.3em;
}
.ui-corner-right {
  -moz-border-radius-topright: 0.3em;
  -webkit-border-top-right-radius: 0.3em;
  border-top-right-radius: 0.3em;
  -moz-border-radius-bottomright: 0.3em;
  -webkit-border-bottom-right-radius: 0.3em;
  border-bottom-right-radius: 0.3em;
}
.ui-corner-left {
  -moz-border-radius-topleft: 0.3em;
  -webkit-border-top-left-radius: 0.3em;
  border-top-left-radius: 0.3em;
  -moz-border-radius-bottomleft: 0.3em;
  -webkit-border-bottom-left-radius: 0.3em;
  border-bottom-left-radius: 0.3em;
}
.ui-corner-none {
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
/*************************************************************************** 
                    Icon (Naviframe)
***************************************************************************/
.ui-header .ui-btn .ui-btn-icon-only .ui-icon,
.ui-footer .ui-btn .ui-btn-icon-only .ui-icon {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
}
.ui-btn-back .ui-btn-inner .ui-icon-header-back-btn,
.ui-btn-footer-down .ui-btn-inner .ui-icon {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.ui-btn-up-s {
  /* less parsing problem : divide css */

  /* FIXME : check ux if it needs to be deprecated... */

}
.ui-btn-up-s .ui-icon-header-back-btn {
  background-image: url(images/page/00_icon_Back.png);
}
.ui-btn-up-s .ui-icon-naviframe-more {
  background-image: url(images/page/00_icon_more.png);
}
.ui-btn-up-s .ui-icon-down {
  background-image: url(images/page/00_icon_SIP_close_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-cancel {
  background-image: url(images/page/00_icon_cancel_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-edit {
  background-image: url(images/page/00_icon_edit_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-plus {
  background-image: url(images/page/00_icon_plus_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-delete {
  background-image: url(images/page/00_icon_delete_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-done {
  background-image: url(images/page/00_icon_done_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-search {
  background-image: url(images/page/00_icon_search_web.png);
}
.ui-btn-up-s .ui-icon-naviframe-selectall {
  background-image: url(images/page/00_icon_select_all_web.png);
}

.ui-btn-hover-s .ui-icon-header-back-btn {
  background-image: url(images/page/00_icon_Back.png);
}
.ui-btn-hover-s .ui-icon-naviframe-more {
  background-image: url(images/page/00_icon_more.png);
}
.ui-btn-hover-s .ui-icon-down {
  background-image: url(images/page/00_icon_SIP_close_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-cancel {
  background-image: url(images/page/00_icon_cancel_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-edit {
  background-image: url(images/page/00_icon_edit_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-plus {
  background-image: url(images/page/00_icon_plus_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-delete {
  background-image: url(images/page/00_icon_delete_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-done {
  background-image: url(images/page/00_icon_done_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-search {
  background-image: url(images/page/00_icon_search_web.png);
}
.ui-btn-hover-s .ui-icon-naviframe-selectall {
  background-image: url(images/page/00_icon_select_all_web.png);
}

.ui-btn-down-s .ui-icon-header-back-btn {
  background-image: url(images/page/00_icon_Back_press.png);
}
.ui-btn-down-s .ui-icon-naviframe-more {
  background-image: url(images/page/00_icon_more_press.png);
}
.ui-btn-down-s .ui-icon-down {
  background-image: url(images/page/00_icon_SIP_close_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-cancel {
  background-image: url(images/page/00_icon_cancel_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-edit {
  background-image: url(images/page/00_icon_edit_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-plus {
  background-image: url(images/page/00_icon_plus_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-delete {
  background-image: url(images/page/00_icon_delete_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-done {
  background-image: url(images/page/00_icon_done_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-search {
  background-image: url(images/page/00_icon_search_press_web.png);
}
.ui-btn-down-s .ui-icon-naviframe-selectall {
  background-image: url(images/page/00_icon_select_all_press_web.png);
}
/* Interaction cues
-----------------------------------------------------------------------------------------------------------*/
.ui-disabled {
  filter: alpha(opacity=30);
  opacity: .3;
  zoom: 1;
}
.ui-disabled,
.ui-disabled a {
  cursor: default !important;
  pointer-events: none;
}
/************************************************************************
			Landscape mode
************************************************************************/
@media all and (orientation: landscape) and (device-aspect-ratio: 16/9) {
  .ui-bar-s > .ui-btn.ui-btn-back .ui-icon-header-back-btn,
  .ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon-header-back-btn {
    top: 0.2272727272727273rem;
  }
  .ui-header.ui-bar-s {
    min-height: 2.0454545454545454rem;
  }
  .ui-header.ui-bar-s .ui-title {
    min-height: 1.1363636363636365rem;
    max-height: 1.3181818181818181rem;
    font-size: 1.1363636363636365rem;
    margin: 0.5454545454545454rem 0.5909090909090909rem 0.18181818181818182rem 0.5909090909090909rem;
    /* tuning UX guide(title height too large)*/
  
  }
  .ui-header.ui-bar-s > .ui-btn.ui-btn-back,
  .ui-header.ui-bar-s > .ui-btn.ui-btn-footer-down {
    right: 0.5909090909090909rem;
  }
  .ui-header.ui-bar-s img {
    margin-top: 0.6363636363636364rem;
    height: 1.0454545454545454rem;
    width: 1.0454545454545454rem;
  }
  .ui-header.ui-bar-s .ui-title-text-sub {
    top: 1.1818181818181819rem;
  }
  .ui-header.ui-bar-s > .ui-btn,
  .ui-header.ui-bar-s > .naviframe-button.ui-btn {
    top: 0.36363636363636365rem;
    height: 1.5454545454545454rem;
    width: 1.5454545454545454rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar > .ui-btn {
    top: 0.36363636363636365rem;
  }
  .ui-header.ui-bar-s.ui-title-multiline img {
    margin-top: 0.5454545454545454rem;
  }
  .ui-header.ui-bar-s.ui-title-multiline .ui-title {
    min-height: 0.9545454545454546rem;
    max-height: 0.9545454545454546rem;
    /* temporary UX strange */
  
    font-size: 0.8636363636363636rem;
    margin: 0.2272727272727273rem 0.5909090909090909rem 0.8636363636363636rem 0.5909090909090909rem;
    display: block;
  }
  .ui-header.ui-bar-s.ui-title-multiline .ui-title-text-sub {
    top: 1.1818181818181819rem;
    font-size: 0.6363636363636364rem;
  }
  .ui-footer.ui-bar-s {
    height: 1.9090909090909092rem;
  }
  .ui-footer.ui-bar-s > .ui-btn.ui-btn-back > .ui-btn-icon-only,
  .ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down > .ui-btn-icon-only,
  .ui-footer.ui-bar-s > [data-icon="naviframe-more"] > .ui-btn-icon-only {
    width: 2.5454545454545454rem;
    height: 1.9090909090909092rem;
  }
  .ui-footer.ui-bar-s > .ui-btn.ui-btn-back .ui-icon-down,
  .ui-footer.ui-bar-s > .ui-btn.ui-btn-footer-down .ui-icon-down,
  .ui-footer.ui-bar-s > [data-icon="naviframe-more"] .ui-icon-down {
    top: 0.2272727272727273rem;
  }
  .ui-footer.ui-bar-s [data-icon="naviframe-more"] .ui-icon-naviframe-more {
    top: 0.2272727272727273rem;
  }
  .ui-footer.ui-bar-s [data-role="controlgroup"] {
    margin-top: 0.2727272727272727rem;
    margin-bottom: 0.2727272727272727rem;
    /* temp value */
  
    padding-left: 2.6363636363636362rem;
    padding-right: 2.6363636363636362rem;
  }
  .ui-footer.ui-bar-s [data-role="controlgroup"] [data-role="button"] {
    padding: 0px;
    margin-left: -0.18181818181818182rem;
    margin-right: -0.2272727272727273rem;
    top: -0.18181818181818182rem;
  }
  .ui-footer.ui-bar-s > [data-role="button"]:not([data-icon="naviframe-more"]) {
    position: absolute;
    top: 0px;
  }
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
*/
/*** less definitions ***/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/************************/
/* some unsets - more probably needed */
.ui-mobile,
.ui-mobile body {
  height: 100%;
  font-size: 22px;
}
@media all and (max-width: 359px) {
  .ui-mobile,
  .ui-mobile body {
    font-size: 19px;
  }
}
.ui-mobile fieldset,
.ui-page {
  padding: 0;
  margin: 0;
}
.ui-mobile a img,
.ui-mobile fieldset {
  border: 0;
}
/* responsive page widths */
.ui-mobile-viewport {
  margin: 0;
  overflow-x: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/* "page" containers - full-screen views, one should always be in view post-pageload */
.ui-mobile [data-role=page],
.ui-mobile [data-role=dialog],
.ui-page {
  top: 0;
  left: 0;
  width: 100%;
  position: absolute;
  display: none;
  border: 0;
}
.ui-mobile .ui-page-active {
  display: block;
  overflow: visible;
}
/* on ios4, setting focus on the page element causes flashing during transitions when there is an outline, so we turn off outlines */
.ui-page {
  outline: none;
}
.ui-mobile,
.ui-mobile .ui-page {
  background: #f8f6ef;
  color: #000000;
}
/* native overflow scrolling */
.ui-page.ui-mobile-touch-overflow,
.ui-mobile-touch-overflow.ui-native-fixed .ui-content {
  overflow: auto;
  height: 100%;
  -webkit-overflow-scrolling: touch;
  -moz-overflow-scrolling: touch;
  -o-overflow-scrolling: touch;
  -ms-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
.ui-page.ui-mobile-touch-overflow,
.ui-page.ui-mobile-touch-overflow * {
  /* some level of transform keeps elements from blinking out of visibility on iOS */

  transform: rotateY(0);
  -ms-transform: rotateY(0);
  -moz-transform: rotateY(0);
  -webkit-transform: rotateY(0);
  -o-transform: rotateY(0);
}
.ui-page.ui-mobile-pre-transition {
  display: block;
}
/* loading screen */
.ui-loading .ui-mobile-viewport {
  overflow: hidden !important;
}
.ui-loading .ui-loader {
  display: block;
}
.ui-loading .ui-page {
  overflow: hidden;
}
.ui-loader {
  display: none;
  position: absolute;
  opacity: .85;
  z-index: 100;
  left: 50%;
  width: 200px;
  margin-left: -130px;
  margin-top: -35px;
  padding: 10px 30px;
}
.ui-loader h1 {
  font-size: 1.4545454545454546rem;
  text-align: center;
}
.ui-loader .ui-icon {
  position: static;
  display: block;
  opacity: .9;
  margin: 0 auto;
  width: 35px;
  height: 35px;
  background-color: transparent;
}
.ui-blocker {
  width: 100%;
  height: 100%;
  z-index: 2147483647;
}
/*fouc*/
.ui-mobile-rendering > * {
  visibility: hidden;
}
/*headers, content panels*/
.ui-bar,
.ui-body {
  position: relative;
  padding: .4em 15px;
  overflow: hidden;
  display: block;
  clear: both;
}
.ui-bar {
  font-size: 16px;
  margin: 0;
}
.ui-bar h1,
.ui-bar h2,
.ui-bar h3,
.ui-bar h4,
.ui-bar h5,
.ui-bar h6 {
  margin: 0;
  padding: 0;
  font-size: 16px;
  display: inline-block;
}
.ui-header,
.ui-footer {
  display: block;
}
.ui-page .ui-header,
.ui-page .ui-footer {
  position: fixed;
  /*position: relative;*/
  z-index: 1000;
}
/* Title button packing order */
.ui-header .ui-btn-left {
  top: .4em;
  float: left;
}
.ui-header .ui-btn-right {
  float: right;
  top: .4em;
}
.ui-header .ui-title,
.ui-footer .ui-title {
  min-height: 1.1em;
  text-align: center;
  font-size: 16px;
  display: block;
  margin: .6em 90px .8em;
  padding: 0;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  outline: 0 !important;
}
/*content area*/
.ui-content {
  border-width: 0;
  overflow: visible;
  overflow-x: hidden;
  padding: 15px;
}
.ui-page-fullscreen .ui-content {
  padding: 0;
}
/* native fixed headers and footers */
.ui-mobile-touch-overflow.ui-page.ui-native-fixed,
.ui-mobile-touch-overflow.ui-page.ui-native-fullscreen {
  overflow: visible;
}
.ui-mobile-touch-overflow.ui-native-fixed .ui-header,
.ui-mobile-touch-overflow.ui-native-fixed .ui-footer {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 200;
}
.ui-mobile-touch-overflow.ui-page.ui-native-fixed .ui-footer {
  top: auto;
  bottom: 0;
}
.ui-mobile-touch-overflow.ui-native-fixed .ui-content {
  padding-top: 2.5em;
  padding-bottom: 3em;
  top: 0;
  bottom: 0;
  height: auto;
  position: absolute;
}
.ui-mobile-touch-overflow.ui-native-fullscreen .ui-content {
  padding-top: 0;
  padding-bottom: 0;
}
.ui-mobile-touch-overflow.ui-native-fullscreen .ui-header,
.ui-mobile-touch-overflow.ui-native-fullscreen .ui-footer {
  opacity: .9;
}
.ui-native-bars-hidden {
  display: none;
}
/* icons sizing */
.ui-icon {
  width: 18px;
  height: 18px;
}
/* fullscreen class on ui-content div */
.ui-fullscreen img {
  max-width: 100%;
}
/* non-js content hiding */
.ui-nojs {
  position: absolute;
  left: -9999px;
}
/* Transitions originally inspired by those from jQtouch, nice work, folks */
.ui-mobile-viewport-transitioning,
.ui-mobile-viewport-transitioning .ui-page {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.in {
	-ms-animation-timing-function: ease-out;
        -ms-animation-duration: 350ms;
	-o-animation-timing-function: ease-out;
        -o-animation-duration: 350ms;
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-duration: 350ms;
	-moz-animation-timing-function: ease-out;
	-moz-animation-duration: 350ms;
}

.out {
	-ms-animation-timing-function: ease-in;
        -ms-animation-duration: 225ms;
        -o-animation-timing-function: ease-in;
        -o-animation-duration: 225;
	-webkit-animation-timing-function: ease-in;
	-webkit-animation-duration: 225ms;
	-moz-animation-timing-function: ease-in;
	-moz-animation-duration: 225;
}


/* fade */

@-webkit-keyframes fadein {
    from { opacity: 0; }
    to { opacity: 1; }
}

@-moz-keyframes fadein {
    from { opacity: 0; }
    to { opacity: 1; }
}

@-webkit-keyframes fadeout {
    from { opacity: 1; }
    to { opacity: 0; }
}

@-moz-keyframes fadeout {
    from { opacity: 1; }
    to { opacity: 0; }
}

.fade.out {
	opacity: 0;
	-ms-animation-duration: 125ms;
        -ms-animation-name: fadeout;
        -o-animation-duration: 125ms;
        -o-animation-name: fadeout;
	-webkit-animation-duration: 125ms;
	-webkit-animation-name: fadeout;
	-moz-animation-duration: 125ms;
	-moz-animation-name: fadeout;
}

.fade.in {
	opacity: 1;
	-ms-animation-duration: 225ms;
        -ms-animation-name: fadein;
        -o-animation-duration: 225ms;
        -o-animation-name: fadein;
	-webkit-animation-duration: 225ms;
	-webkit-animation-name: fadein;
	-moz-animation-duration: 225ms;
	-moz-animation-name: fadein;
}


/* flip */

/* The properties in this rule are only necessary for the 'flip' transition.
 * We need specify the perspective to create a projection matrix. This will add
 * some depth as the element flips. The depth number represents the distance of
 * the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate
 * value.
 */

.viewport-flip {
	-ms-perspective: 1000;
	-o-perspective: 1000;
	-webkit-perspective: 1000;
	-moz-perspective: 1000;
	position: absolute;
}
.flip {
	-webkit-backface-visibility:hidden;
	-webkit-transform:translate3d(0, 0, 0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
	-moz-backface-visibility:hidden;
	-moz-transform:translate3d(0, 0, 0);
}

.flip.out {
	-webkit-transform: rotateY(-90deg) scale(.9);
	-webkit-animation-name: flipouttoleft;
	-webkit-animation-duration: 175ms;
	-moz-transform: rotateY(-90deg) scale(.9);
	-moz-animation-name: flipouttoleft;
	-moz-animation-duration: 175ms;
}

.flip.in {
	-webkit-animation-name: flipintoright;
	-webkit-animation-duration: 225ms;
	-moz-animation-name: flipintoright;
	-moz-animation-duration: 225ms;
}

.flip.out.reverse {
	-webkit-transform: rotateY(90deg) scale(.9);
	-webkit-animation-name: flipouttoright;
	-moz-transform: rotateY(90deg) scale(.9);
	-moz-animation-name: flipouttoright;
}

.flip.in.reverse {
	-webkit-animation-name: flipintoleft;
	-moz-animation-name: flipintoleft;
}

@-webkit-keyframes flipouttoleft {
    from { -webkit-transform: rotateY(0); }
    to { -webkit-transform: rotateY(-90deg) scale(.9); }
}
@-moz-keyframes flipouttoleft {
    from { -moz-transform: rotateY(0); }
    to { -moz-transform: rotateY(-90deg) scale(.9); }
}
@-webkit-keyframes flipouttoright {
    from { -webkit-transform: rotateY(0) ; }
    to { -webkit-transform: rotateY(90deg) scale(.9); }
}
@-moz-keyframes flipouttoright {
    from { -moz-transform: rotateY(0); }
    to { -moz-transform: rotateY(90deg) scale(.9); }
}
@-webkit-keyframes flipintoleft {
    from { -webkit-transform: rotateY(-90deg) scale(.9); }
    to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoleft {
    from { -moz-transform: rotateY(-90deg) scale(.9); }
    to { -moz-transform: rotateY(0); }
}
@-webkit-keyframes flipintoright {
    from { -webkit-transform: rotateY(90deg) scale(.9); }
    to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoright {
    from { -moz-transform: rotateY(90deg) scale(.9); }
    to { -moz-transform: rotateY(0); }
}


/* flow transition */

.flow {
	-webkit-transform-origin: 50% 30%;
	-moz-transform-origin: 50% 30%;
	-webkit-box-shadow: 0 0 20px rgba(0,0,0,.4);
	-moz-box-shadow: 0 0 20px rgba(0,0,0,.4);
}
.ui-dialog.flow {
	-webkit-transform-origin: none;
	-moz-transform-origin: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
}
.flow.out {
	-webkit-transform: translate3d(-100%, 0, 0) scale(.7);
	-webkit-animation-name: flowouttoleft;
	-webkit-animation-timing-function: ease;
	-webkit-animation-duration: 350ms;
	-moz-transform: translate3d(-100%, 0, 0) scale(.7);
	-moz-animation-name: flowouttoleft;
	-moz-animation-timing-function: ease;
	-moz-animation-duration: 350ms;
}

.flow.in {
	-webkit-transform: translate3d(0, 0, 0) scale(1);
	-webkit-animation-name: flowinfromright;
	-webkit-animation-timing-function: ease;
	-webkit-animation-duration: 350ms;
	-moz-transform: translate3d(0, 0, 0) scale(1);
	-moz-animation-name: flowinfromright;
	-moz-animation-timing-function: ease;
	-moz-animation-duration: 350ms;
}

.flow.out.reverse {
	-webkit-transform: translate3d(100%, 0, 0);
	-webkit-animation-name: flowouttoright;
	-moz-transform: translate3d(100%, 0, 0);
	-moz-animation-name: flowouttoright;
}

.flow.in.reverse {
	-webkit-animation-name: flowinfromleft;
	-moz-animation-name: flowinfromleft;
}

@-webkit-keyframes flowouttoleft {
    0% { -webkit-transform: translate3d(0, 0, 0) scale(1); }
	60%, 70% { -webkit-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -webkit-transform: translate3d(-100%, 0, 0) scale(.7); }
}
@-moz-keyframes flowouttoleft {
    0% { -moz-transform: translate3d(0, 0, 0) scale(1); }
	60%, 70% { -moz-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -moz-transform:  translateX(-100%) scale(.7); }
}

@-webkit-keyframes flowouttoright {
    0% { -webkit-transform: translate3d(0, 0, 0) scale(1); }
	60%, 70% { -webkit-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -webkit-transform:  translate3d(100%, 0, 0) scale(.7); }
}
@-moz-keyframes flowouttoright {
    0% { -moz-transform: translate3d(0, 0, 0) scale(1); }
	60%, 70% { -moz-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -moz-transform:  translate3d(100%, 0, 0) scale(.7); }
}

@-webkit-keyframes flowinfromleft {
    0% { -webkit-transform: translate3d(-100%, 0, 0) scale(.7); }
	30%, 40% { -webkit-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -webkit-transform: translate3d(0, 0, 0) scale(1); }
}
@-moz-keyframes flowinfromleft {
    0% { -moz-transform: translate3d(-100%, 0, 0) scale(.7); }
	30%, 40% { -moz-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -moz-transform: translate3d(0, 0, 0) scale(1); }
}
@-webkit-keyframes flowinfromright {
    0% { -webkit-transform: translate3d(100%, 0, 0) scale(.7); }
	30%, 40% { -webkit-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -webkit-transform: translate3d(0, 0, 0) scale(1); }
}
@-moz-keyframes flowinfromright {
    0% { -moz-transform: translate3d(100%, 0, 0) scale(.7); }
	30%, 40% { -moz-transform: translate3d(0, 0, 0) scale(.7); }
    100% { -moz-transform: translate3d(0, 0, 0) scale(1); }
}


/* pop */

.pop {
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
}

.pop.in {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
    opacity: 1;
	-webkit-animation-name: popin;
	-moz-animation-name: popin;
	-webkit-animation-duration: 350ms;
	-moz-animation-duration: 350ms;
}

.pop.out {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	opacity: 0;
	-webkit-animation-duration: 100ms;
	-moz-animation-duration: 100ms;
}

.pop.in.reverse {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
}

.pop.out.reverse {
	-webkit-transform: scale(.8);
	-moz-transform: scale(.8);
	-webkit-animation-name: popout;
	-moz-animation-name: popout;
}

@-webkit-keyframes popin {
    from {
        -webkit-transform: scale(.8);
        opacity: 0;
    }
    to {
        -webkit-transform: scale(1);
        opacity: 1;
    }
}

@-moz-keyframes popin {
    from {
        -moz-transform: scale(.8);
        opacity: 0;
    }
    to {
        -moz-transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes popout {
    from {
        -webkit-transform: scale(1);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(.8);
        opacity: 0;
    }
}

@-moz-keyframes popout {
    from {
        -moz-transform: scale(1);
        opacity: 1;
    }
    to {
        -moz-transform: scale(.8);
        opacity: 0;
    }
}


/* slide */

/* keyframes for slidein from sides */
@-webkit-keyframes slideinfromright {
    from { -webkit-transform: translate3d(100%, 0, 0); }
    to { -webkit-transform: translate3d(0, 0, 0); }
}
@-moz-keyframes slideinfromright {
    from { -moz-transform: translate3d(100%, 0, 0); }
    to { -moz-transform: translate3d(0, 0, 0); }
}

@-webkit-keyframes slideinfromleft {
    from { -webkit-transform: translate3d(-100%, 0, 0); }
    to { -webkit-transform: translate3d(0, 0, 0); }
}
@-moz-keyframes slideinfromleft {
    from { -moz-transform: translate3d(-100%, 0, 0); }
    to { -moz-transform: translate3d(0, 0, 0); }
}

/* keyframes for slideout to sides */
@-webkit-keyframes slideouttoleft {
    from { -webkit-transform: translate3d(0, 0, 0); }
    to { -webkit-transform: translate3d(-100%, 0, 0); }
}
@-moz-keyframes slideouttoleft {
    from { -moz-transform: translate3d(0, 0, 0); }
    to { -moz-transform: translate3d(-100%, 0, 0); }
}

@-webkit-keyframes slideouttoright {
    from { -webkit-transform: translate3d(0, 0, 0); }
    to { -webkit-transform: translate3d(100%, 0, 0); }
}
@-moz-keyframes slideouttoright {
    from { -moz-transform: translate3d(0, 0, 0); }
    to { -moz-transform: translate3d(100%, 0, 0); }
}

.slide.out, .slide.in {
	-webkit-animation-timing-function: ease-out;
	-webkit-animation-duration: 350ms;
	-moz-animation-timing-function: ease-out;
	-moz-animation-duration: 350ms;
}
.slide.out {
	-webkit-transform: translate3d(-100%, 0, 0);
	-webkit-animation-name: slideouttoleft;
	-moz-transform: translate3d(-100%, 0, 0);
	-moz-animation-name: slideouttoleft;
}

.slide.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slideinfromright;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slideinfromright;
}

.slide.out.reverse {
	-webkit-transform: translate3d(100%, 0, 0);
	-webkit-animation-name: slideouttoright;
	-moz-transform: translate3d(100%, 0, 0);
	-moz-animation-name: slideouttoright;
}

.slide.in.reverse {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slideinfromleft;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slideinfromleft;
}

/* slide down */

.slidedown.out {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	-webkit-animation-duration: 100ms;
	-moz-animation-duration: 100ms;
}

.slidedown.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slideinfromtop;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slideinfromtop;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
}

.slidedown.in.reverse {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
	-webkit-animation-duration: 150ms;
	-moz-animation-duration: 150ms;
}

.slidedown.out.reverse {
	-webkit-transform: translate3d(0, -100%, 0);
	-moz-transform: translate3d(0, -100%, 0);
	-webkit-animation-name: slideouttotop;
	-moz-animation-name: slideouttotop;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

@-webkit-keyframes slideinfromtop {
    from { -webkit-transform: translate3d(0, -100%, 0); }
    to { -webkit-transform: translate3d(0, 0, 0); }
}
@-moz-keyframes slideinfromtop {
    from { -moz-transform: translate3d(0, -100%, 0); }
    to { -moz-transform: translate3d(0, 0, 0); }
}

@-webkit-keyframes slideouttotop {
    from { -webkit-transform: translate3d(0, 0, 0); }
    to { -webkit-transform: translate3d(0, -100%, 0); }
}
@-moz-keyframes slideouttotop {
    from { -moz-transform: translate3d(0, 0, 0); }
    to { -moz-transform: translate3d(0, -100%, 0); }
}

/* slide up */

.slideup.out {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	-webkit-animation-duration: 100ms;
	-moz-animation-duration: 100ms;
}

.slideup.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slideinfrombottom;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slideinfrombottom;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
}

.slideup.in.reverse {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
	-webkit-animation-duration: 150ms;
	-moz-animation-duration: 150ms;
}

.slideup.out.reverse {
	-webkit-transform: translate3d(0, 100%, 0);
	-moz-transform: translate3d(0, 100%, 0);
	-webkit-animation-name: slideouttobottom;
	-moz-animation-name: slideouttobottom;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

@-webkit-keyframes slideinfrombottom {
    from { -webkit-transform: translate3d(0, 100%, 0); }
    to { -webkit-transform: translate3d(0, 0, 0); }
}
@-moz-keyframes slideinfrombottom {
    from { -moz-transform: translate3d(0, 100%, 0); }
    to { -moz-transform: translate3d(0, 0, 0); }
}

@-webkit-keyframes slideouttobottom {
    from { -webkit-transform: translate3d(0, 0, 0); }
    to { -webkit-transform: translate3d(0, 100%, 0); }
}
@-moz-keyframes slideouttobottom {
    from { -moz-transform: translate3d(0, 0, 0); }
    to { -moz-transform: translate3d(0, 100%, 0); }
}

/* slide up + fade */

.slideupfade.out {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	-webkit-animation-duration: 100ms;
	-moz-animation-duration: 100ms;
}

.slideupfade.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slideupfadeinfrombottom;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slideupfadeinfrombottom;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
}

.slideupfade.in.reverse {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
	-webkit-animation-duration: 150ms;
	-moz-animation-duration: 150ms;
}

.slideupfade.out.reverse {
	-webkit-transform: translate3d(0, 5%, 0);
	-moz-transform: translate3d(0, 5%, 0);
	-webkit-animation-name: slideupfadeouttobottom;
	-moz-animation-name: slideupfadeouttobottom;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

@-webkit-keyframes slideupfadeinfrombottom {
    from {
		opacity: 0;
		-webkit-transform: translate3d(0, 5%, 0);
	}
    to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
	}
}
@-moz-keyframes slideupfadeinfrombottom {
    from {
		opacity: 0;
		-moz-transform: translate3d(0, 5%, 0);
	}
    to {
		opacity: 1;
		-moz-transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes slideupfadeouttobottom {
    from {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
	}
    to {
		opacity: 0;
		-webkit-transform: translate3d(0, 5%, 0);
	}
}
@-moz-keyframes slideupfadeouttobottom {
    from {
		opacity: 1;
		-moz-transform: translate3d(0, 0, 0);
	}
    to {
		opacity: 0;
		-moz-transform: translate3d(0, 5%, 0);
	}
}

/* slide down + fade */

.slidedownfade.out {
	-webkit-animation-name: fadeout;
	-moz-animation-name: fadeout;
	-webkit-animation-duration: 100ms;
	-moz-animation-duration: 100ms;
}

.slidedownfade.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: slidedownfadeinfromtop;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: slidedownfadeinfromtop;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
}

.slidedownfade.in.reverse {
	-webkit-animation-name: fadein;
	-moz-animation-name: fadein;
	-webkit-animation-duration: 150ms;
	-moz-animation-duration: 150ms;
}

.slidedownfade.out.reverse {
	-webkit-transform: translate3d(0, -5%, 0);
	-moz-transform: translate3d(0, -5%, 0);
	-webkit-animation-name: slidedownfadeouttotop;
	-moz-animation-name: slidedownfadeouttotop;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

@-webkit-keyframes slidedownfadeinfromtop {
    from {
		opacity: 0;
		-webkit-transform: translate3d(0, -5%, 0);
	}
    to {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
	}
}
@-moz-keyframes slidedownfadeinfromtop {
    from {
		opacity: 0;
		-moz-transform: translate3d(0, -5%, 0);
	}
    to {
		opacity: 1;
		-moz-transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes slidedownfadeouttotop {
    from {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
	}
    to {
		opacity: 0;
		-webkit-transform: translate3d(0, -5%, 0);
	}
}
@-moz-keyframes slidedownfadeouttotop {
    from {
		opacity: 1;
		-moz-transform: translate3d(0, 0, 0);
	}
    to {
		opacity: 0;
		-moz-transform: translate3d(0, -5%, 0);
	}
}

/* slide fade */

.slidefade.out {
	-webkit-transform: translate3d(-100%, 0, 0);
	-webkit-animation-name: slideouttoleft;
	-moz-transform: translate3d(-100%, 0, 0);
	-moz-animation-name: slideouttoleft;
	-webkit-animation-duration: 225ms;
	-moz-animation-duration: 225ms;
}

.slidefade.in {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: fadein;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: fadein;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

.slidefade.out.reverse {
	-webkit-transform: translate3d(100%, 0, 0);
	-webkit-animation-name: slideouttoright;
	-moz-transform: translate3d(100%, 0, 0);
	-moz-animation-name: slideouttoright;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

.slidefade.in.reverse {
	-webkit-transform: translate3d(0, 0, 0);
	-webkit-animation-name: fadein;
	-moz-transform: translate3d(0, 0, 0);
	-moz-animation-name: fadein;
	-webkit-animation-duration: 200ms;
	-moz-animation-duration: 200ms;
}

/* The properties in this rule are only necessary for the 'flip' transition.
 * We need specify the perspective to create a projection matrix. This will add
 * some depth as the element flips. The depth number represents the distance of
 * the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate
 * value.
 */

.viewport-turn {
	-webkit-perspective: 1000;
	-moz-perspective: 1000;
	position: absolute;
}
.turn {
	-webkit-backface-visibility:hidden;
	-webkit-transform:translate3d(0, 0, 0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
	-webkit-transform-origin: 0;
	-moz-backface-visibility:hidden;
	-moz-transform:translate3d(0, 0, 0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
	-moz-transform-origin: 0;
}

.turn.out {
	-webkit-transform: rotateY(-90deg) scale(.9);
	-webkit-animation-name: flipouttoleft;
	-moz-transform: rotateY(-90deg) scale(.9);
	-moz-animation-name: flipouttoleft;
	-webkit-animation-duration: 125ms;
	-moz-animation-duration: 125ms;
}

.turn.in {
	-webkit-animation-name: flipintoright;
	-moz-animation-name: flipintoright;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
}

.turn.out.reverse {
	-webkit-transform: rotateY(90deg) scale(.9);
	-webkit-animation-name: flipouttoright;
	-moz-transform: rotateY(90deg) scale(.9);
	-moz-animation-name: flipouttoright;
}

.turn.in.reverse {
	-webkit-animation-name: flipintoleft;
	-moz-animation-name: flipintoleft;
}

@-webkit-keyframes flipouttoleft {
    from { -webkit-transform: rotateY(0); }
    to { -webkit-transform: rotateY(-90deg) scale(.9); }
}
@-moz-keyframes flipouttoleft {
    from { -moz-transform: rotateY(0); }
    to { -moz-transform: rotateY(-90deg) scale(.9); }
}
@-webkit-keyframes flipouttoright {
    from { -webkit-transform: rotateY(0) ; }
    to { -webkit-transform: rotateY(90deg) scale(.9); }
}
@-moz-keyframes flipouttoright {
    from { -moz-transform: rotateY(0); }
    to { -moz-transform: rotateY(90deg) scale(.9); }
}
@-webkit-keyframes flipintoleft {
    from { -webkit-transform: rotateY(-90deg) scale(.9); }
    to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoleft {
    from { -moz-transform: rotateY(-90deg) scale(.9); }
    to { -moz-transform: rotateY(0); }
}
@-webkit-keyframes flipintoright {
    from { -webkit-transform: rotateY(90deg) scale(.9); }
    to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoright {
    from { -moz-transform: rotateY(90deg) scale(.9); }
    to { -moz-transform: rotateY(0); }
}


/* depth */

.depth {
	-webkit-transform-origin: 50% 50%;
	-moz-transform-origin: 50% 50%;
}

.depth.out {
	-webkit-animation-name: depthout;
	-moz-animation-name: depthout;
	opacity: 0;
	-webkit-animation-duration: 250ms;
	-moz-animation-duration: 250ms;
	-webkit-animation-timing-function: ease;
	-moz-animation-timing-function: ease;
}

.depth.in {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	opacity: 1;
	-webkit-animation-name: depthin;
	-moz-animation-name: depthin;
	-webkit-animation-duration: 350ms;
	-moz-animation-duration: 350ms;
	-webkit-animation-timing-function: ease;
	-moz-animation-timing-function: ease;
}

.depth.in.reverse {
	-webkit-animation-name: depthinreverse;
	-moz-animation-name: depthinreverse;
}

.depth.out.reverse {
	-webkit-transform: scale(.9);
	-moz-transform: scale(.9);
	-webkit-animation-name: depthoutreverse;
	-moz-animation-name: depthoutreverse;
}

@-webkit-keyframes depthout {
    from {
        -webkit-transform: scale(1);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(1.1);
        opacity: 0;
    }
}

@-moz-keyframes depthout {
    from {
        -moz-transform: scale(1);
        opacity: 1;
    }
    to {
        -moz-transform: scale(1.1);
        opacity: 0;
    }
}

@-webkit-keyframes depthin {
    0% {
        -webkit-transform: scale(.9);
        opacity: 0;
    }
    30% {
        -webkit-transform: scale(.9);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        opacity: 1;
    }
}

@-moz-keyframes depthin {
    0% {
        -moz-transform: scale(.9);
        opacity: 0;
    }
    30% {
        -moz-transform: scale(.9);
        opacity: 0;
    }
    100% {
        -moz-transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes depthinreverse {
    0% {
        -webkit-transform: scale(1.1);
        opacity: 0;
    }
    30% {
        -webkit-transform: scale(1.1);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        opacity: 1;
    }
}

@-moz-keyframes depthinreverse {
    0% {
        -moz-transform: scale(1.1);
        opacity: 0;
    }
    30% {
        -moz-transform: scale(1.1);
        opacity: 0;
    }
    100% {
        -moz-transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes depthoutreverse {
    from {
        -webkit-transform: scale(1);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(.9);
        opacity: 0;
    }
}

@-moz-keyframes depthoutreverse {
    from {
        -moz-transform: scale(1);
        opacity: 1;
    }
    to {
        -moz-transform: scale(.9);
        opacity: 0;
    }
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/

/* content configurations. */
.ui-grid-a, .ui-grid-b, .ui-grid-c, .ui-grid-d { overflow: hidden; }
.ui-block-a, .ui-block-b, .ui-block-c, .ui-block-d, .ui-block-e { margin: 0; padding: 0; border: 0; float: left; min-height:1px;}

/* grid solo: 100 - single item fallback */
.ui-grid-solo .ui-block-a { width: 100%; float: none; }

/* grid a: 50/50 */
.ui-grid-a .ui-block-a, .ui-grid-a .ui-block-b { width: 50%; }
.ui-grid-a .ui-block-a { clear: left; }

/* grid b: 33/33/33 */
.ui-grid-b .ui-block-a, .ui-grid-b .ui-block-b, .ui-grid-b .ui-block-c { width: 33.333%; }
.ui-grid-b .ui-block-a { clear: left; }

/* grid c: 25/25/25/25 */
.ui-grid-c .ui-block-a, .ui-grid-c .ui-block-b, .ui-grid-c .ui-block-c, .ui-grid-c .ui-block-d { width: 25%; }
.ui-grid-c .ui-block-a { clear: left; }

/* grid d: 20/20/20/20/20 */
.ui-grid-d .ui-block-a, .ui-grid-d .ui-block-b, .ui-grid-d .ui-block-c, .ui-grid-d .ui-block-d, .ui-grid-d .ui-block-e { width: 20%; }
.ui-grid-d .ui-block-a { clear: left; }
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
/* fixed page header & footer configuration */
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-header,
.ui-footer,
.ui-page-fullscreen .ui-header,
.ui-page-fullscreen .ui-footer {
  position: absolute;
  overflow: hidden;
  width: 100%;
  border-left-width: 0;
  border-right-width: 0;
}
.ui-header-fixed,
.ui-footer-fixed {
  z-index: 1000;
  -webkit-transform: translateZ(0);
  /* Force header/footer rendering to go through the same rendering pipeline as native page scrolling. */

}
.ui-footer-duplicate,
.ui-page-fullscreen .ui-fixed-inline {
  display: none;
}
.ui-page-fullscreen .ui-header,
.ui-page-fullscreen .ui-footer {
  opacity: .9;
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
.ui-navbar { overflow: hidden;  }
.ui-navbar ul, .ui-navbar-expanded ul { list-style:none; padding: 0; margin: 0; position: relative; display: block; border: 0;}
.ui-navbar-collapsed ul { float: left; width: 75%; margin-right: -2px; }
.ui-navbar-collapsed .ui-navbar-toggle { float: left; width: 25%; }
.ui-navbar li.ui-navbar-truncate { position: absolute; left: -9999px; top: -9999px; }
.ui-navbar li .ui-btn, .ui-navbar .ui-navbar-toggle .ui-btn { display: block; font-size: 12px; text-align: center; margin: 0; border-right-width: 0; }
.ui-navbar li .ui-btn {  margin-right: -1px; }
.ui-navbar li .ui-btn:last-child { margin-right: 0; }
.ui-header .ui-navbar li .ui-btn, .ui-header .ui-navbar .ui-navbar-toggle .ui-btn,
.ui-footer .ui-navbar li .ui-btn, .ui-footer .ui-navbar .ui-navbar-toggle .ui-btn { border-top-width: 0; border-bottom-width: 0; }
.ui-navbar .ui-btn-inner { padding-left: 2px; padding-right: 2px; }
.ui-navbar-noicons li .ui-btn .ui-btn-inner, .ui-navbar-noicons .ui-navbar-toggle .ui-btn-inner { padding-top: .8em; padding-bottom: .9em; }
/*expanded page styles*/
.ui-navbar-expanded .ui-btn { margin: 0; font-size: 14px; }
.ui-navbar-expanded .ui-btn-inner { padding-left: 5px; padding-right: 5px;  }
.ui-navbar-expanded .ui-btn-icon-top .ui-btn-inner { padding: 45px 5px 15px; text-align: center; }
.ui-navbar-expanded .ui-btn-icon-top .ui-icon { top: 15px; }
.ui-navbar-expanded .ui-btn-icon-bottom .ui-btn-inner { padding: 15px 5px 45px; text-align: center; }
.ui-navbar-expanded .ui-btn-icon-bottom .ui-icon { bottom: 15px; }
.ui-navbar-expanded li .ui-btn .ui-btn-inner { min-height: 2.5em; }
.ui-navbar-expanded .ui-navbar-noicons .ui-btn .ui-btn-inner { padding-top: 1.8em; padding-bottom: 1.9em; }
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/* Button colors are defined in config.less

/* Edit button size */
.ui-btn {
  display: block;
  text-align: center;
  cursor: pointer;
  position: relative;
  vertical-align: middle;
}
/* wongi_1018 : For button align. */
.ui-footer .ui-btn.ui-btn-box-s,
.ui-ticker-btn .ui-btn.ui-btn-box-s {
  margin-top: 0;
  margin-bottom: 0;
}
.ui-btn.ui-btn-box-s {
  margin-top: 0.2727272727272727rem;
  margin-bottom: 0.2727272727272727rem;
  color: #3a3a3a;
  text-shadow: 0px 1px #ffffff;
  -o-border-radius: 0.2rem;
  -ms-border-radius: 0.2rem;
  -moz-border-radius: 0.2rem;
  -webkit-border-radius: 0.2rem;
  border-radius: 0.2rem;
}
.ui-btn:focus,
.ui-btn:active {
  outline: none;
}
.ui-header .ui-btn,
.ui-bar .ui-btn {
  display: inline-block;
  font-size: 0.5909090909090909rem;
  margin: 0;
}
.ui-btn-inline {
  display: inline-block;
}
.ui-btn-inner {
  padding: 0.2272727272727273rem;
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  zoom: 1;
}
.ui-btn-icon-notext {
  width: 1.6363636363636365rem;
  height: 1.6363636363636365rem;
}
.ui-btn-icon-notext .ui-btn-inner {
  padding: 0.09090909090909091rem 0.045454545454545456rem 0.09090909090909091rem 0.13636363636363635rem;
}
.ui-btn-icon-notext .ui-btn-inner .ui-icon {
  margin-left: -0.7272727272727273rem;
  margin-top: -0.7272727272727273rem;
}
.ui-btn-icon-notext .ui-btn-text {
  position: absolute;
  left: -45.409090909090914rem;
}
.ui-btn-icon-left .ui-btn-inner {
  padding-left: 1.5rem;
}
.ui-header .ui-btn-icon-left .ui-btn-inner,
.ui-footer .ui-btn-icon-left .ui-btn-inner,
.ui-bar .ui-btn-icon-left .ui-btn-inner {
  padding-left: 1.2272727272727273rem;
}
.ui-btn-icon-right .ui-btn-inner {
  padding-right: 1.5rem;
}
.ui-header .ui-btn-icon-right .ui-btn-inner,
.ui-footer .ui-btn-icon-right .ui-btn-inner,
.ui-bar .ui-btn-icon-right .ui-btn-inner {
  padding-right: 1.2272727272727273rem;
}
.ui-btn-icon-top .ui-btn-inner {
  padding-top: 1.2272727272727273rem;
}
.ui-header .ui-btn-icon-top .ui-btn-inner,
.ui-footer .ui-btn-icon-top .ui-btn-inner,
.ui-bar .ui-btn-icon-top .ui-btn-inner {
  padding-top: 1.2272727272727273rem;
}
.ui-btn-icon-bottom .ui-btn-inner {
  padding-bottom: 1.5rem;
}
.ui-header .ui-btn-icon-bottom .ui-btn-inner,
.ui-footer .ui-btn-icon-bottom .ui-btn-inner,
.ui-bar .ui-btn-icon-bottom .ui-btn-inner {
  padding-bottom: 1.2272727272727273rem;
}
/*btn icon positioning*/
.ui-btn-icon-notext .ui-icon {
  display: block;
}
.ui-btn-icon-left .ui-icon,
.ui-btn-icon-right .ui-icon,
.ui-btn-icon-circle .ui-icon {
  position: absolute;
  /*top: 50%; margin-top: -9px;*/
}
/* wongi_1018 : do not use. No more use 18px default icons. */
.ui-btn-icon-top .ui-icon,
.ui-btn-icon-bottom .ui-icon {
  position: absolute;
  left: 50%;
  margin-left: -9px;
}
.ui-btn-icon-left .ui-icon {
  left: 0.2272727272727273rem;
}
.ui-btn-icon-circle .ui-icon {
  left: 0rem;
}
/* wongi_1018 : for circle icon center positioning. */
.ui-btn-icon-right .ui-icon {
  right: 0.4545454545454546rem;
}
.ui-btn-icon-top .ui-icon {
  top: 0rem;
  margin-top: 0;
}
.ui-btn-icon-bottom .ui-icon {
  bottom: 0rem;
}
.ui-header .ui-btn-icon-right .ui-icon,
.ui-footer .ui-btn-icon-right .ui-icon,
.ui-bar .ui-btn-icon-right .ui-icon {
  right: 0.18181818181818182rem;
}
.ui-header .ui-btn-icon-top .ui-icon,
.ui-footer .ui-btn-icon-top .ui-icon,
.ui-bar .ui-btn-icon-top .ui-icon {
  top: 0.18181818181818182rem;
}
.ui-header .ui-btn-icon-bottom .ui-icon,
.ui-footer .ui-btn-icon-bottom .ui-icon,
.ui-bar .ui-btn-icon-bottom .ui-icon {
  bottom: 0.18181818181818182rem;
}
/*hiding native button,inputs */
.ui-btn-hidden {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-appearance: button;
  opacity: .1;
  cursor: pointer;
  background: transparent;
  font-size: 0.045454545454545456rem;
  border: none;
  line-height: 45.409090909090914rem;
}
.ui-btn-text {
  /*padding-left : 80px;*/
  margin-left: auto;
  margin-right: auto;
  padding: 0 1px;
  /* Webkit width(ellipsis) problem workaround */

}
.ui-btn .ui-btn-inner.ui-btn-hastxt span.ui-btn-text {
  font-size: 0.8181818181818182rem;
}
.ui-li .ui-btn.ui-btn-icon_only {
  top: 50%;
  margin-top: -0.7272727272727273rem;
}
.ui-li .ui-btn .ui-btn-inner.ui-btn-hastxt {
  padding: 0.2em 0.5em;
}
.ui-btn-icon-nobg.ui-btn-down-s .ui-btn-inner {
  background: transparent ! important;
}
.ui-btn-box-s.ui-btn-up-s {
  background: #f7f5ed;
  background: -webkit-linear-gradient(top, #f7f5ed, #eceae2);
  background: -moz-linear-gradient(top, #f7f5ed, #eceae2);
  background: -o-linear-gradient(top, #f7f5ed, #eceae2);
  background: -ms-linear-gradient(top, #f7f5ed, #eceae2);
  border: 1px #85837e solid;
  box-shadow: 0.5px 1px 1px #85837e;
}
.ui-btn-box-s.ui-btn-up-s[data-icon="alert"],
.ui-btn-box-s.ui-btn-up-s[data-icon="minus"] {
  background: #c12c21;
  box-shadow: inset 0px 1px 1px #ffffff;
}
.ui-btn-box-s.ui-btn-hover-s {
  background: #f7f5ed;
  background: -webkit-linear-gradient(top, #f7f5ed, #eceae2);
  background: -moz-linear-gradient(top, #f7f5ed, #eceae2);
  background: -o-linear-gradient(top, #f7f5ed, #eceae2);
  background: -ms-linear-gradient(top, #f7f5ed, #eceae2);
  border: 1px #85837e solid;
  box-shadow: 0.5px 1px 1px #85837e;
}
.ui-btn-box-s.ui-btn-hover-s[data-icon="alert"],
.ui-btn-box-s.ui-btn-hover-s[data-icon="minus"] {
  background: #c12c21;
  box-shadow: inset 0px 1px 1px #ffffff;
}
.ui-btn-box-s.ui-btn-down-s {
  background: #007ad8;
  box-shadow: 0.5px 1px 1px #85837e;
  text-shadow: none;
}
.ui-btn-box-s.ui-btn-down-s[data-icon="alert"],
.ui-btn-box-s.ui-btn-down-s[data-icon="minus"] {
  background: #c12c21;
  box-shadow: inset 0px 1px 1px #ffffff;
  text-shadow: none;
}
.ui-btn-corner-all {
  -o-border-radius: 0.3rem;
  -ms-border-radius: 0.3rem;
  -moz-border-radius: 0.3rem;
  -webkit-border-radius: 0.3rem;
  border-radius: 0.3rem;
}
.ui-header .ui-btn-box-s:not(.ui-input-cancel):not(.ui-btn-search-front-icon),
.ui-header .ui-btn-box-s:not(.ui-input-cancel):not(.ui-btn-search-front-icon) .ui-btn-inner,
.ui-header .ui-btn.ui-btn-box-s.ui-btn-down-s:not(.ui-input-cancel):not(.ui-btn-search-front-icon) .ui-btn-inner,
.ui-btn.ui-btn-back.ui-btn-up-s .ui-btn-inner,
.ui-btn.ui-btn-back.ui-btn-hover-s .ui-btn-inner,
.ui-btn.ui-btn-back.ui-btn-down-s .ui-btn-inner,
.ui-btn.ui-btn-footer-down.ui-btn-up-s > .ui-btn-inner,
.ui-btn.ui-btn-footer-down.ui-btn-hover-s > .ui-btn-inner,
.ui-btn.ui-btn-footer-down.ui-btn-down-s > .ui-btn-inner {
  background: transparent;
  border: none;
  box-shadow: none;
}
.ui-header .naviframe-button.ui-btn.ui-btn-box-s.ui-btn-down-s {
  background: rgba(14, 102, 170, 0.1);
}
.ui-btn-icon-top .ui-btn-inner.ui-btn-hastxt,
.ui-li .ui-btn-icon-top .ui-btn-inner.ui-btn-hastxt {
  padding-top: 2.3636363636363638rem;
}
.ui-btn-icon-bottom .ui-btn-inner.ui-btn-hastxt,
.ui-li .ui-btn-icon-bottom .ui-btn-inner.ui-btn-hastxt {
  padding-bottom: 2.3636363636363638rem;
}
/* wongi_1017 : Icons */
/* icons sizing */
.ui-btn .ui-icon {
  width: 1rem;
  height: 1rem;
}
.ui-btn.ui-btn-edit .ui-icon {
  width: 3.3636363636363638rem;
  height: 3.3636363636363638rem;
}
/* Padding for Icon with text */
.ui-btn .ui-btn-text.ui-btn-text-padding-left {
  padding-left: 0.9090909090909092rem;
}
.ui-btn .ui-btn-text.ui-btn-text-padding-right {
  padding-right: 1.4545454545454546rem;
}
.ui-btn .ui-btn-text.ui-btn-text-padding-top {
  padding-top: 1.4545454545454546rem;
}
.ui-icon {
  background-repeat: no-repeat;
  vertical-align: middle;
  background-position: 0% 0%;
  background-size: 100%;
}
.ui-btn-box.s .ui-icon {
  position: absolute;
}
.ui-btn-box-s.ui-btn-icon-left .ui-icon,
.ui-btn-box-s.ui-btn-icon-right .ui-icon {
  margin-top: -0.4545454545454546rem;
  top: 50%;
}
.ui-btn-box-s.ui-btn-icon-top .ui-icon,
.ui-btn-box-s.ui-btn-icon-bottom .ui-icon {
  margin-left: -0.4545454545454546rem;
  left: 50%;
}
.tizen-icon-common {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
}
.tizen-smallicon-common {
  width: 0.9090909090909092rem ! important;
  height: 0.9090909090909092rem ! important;
  top: 50% ! important;
  left: 50% ! important;
  margin-top: -0.4545454545454546rem ! important;
  margin-left: -0.4545454545454546rem ! important;
}
.ui-icon-bg {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/00_btn_circle_bg_normal.png);
  z-index: 0;
}
.ui-icon-arrow-l {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_left.png);
}
.ui-icon-arrow-r {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_right.png);
}
.ui-icon-arrow-u {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_opened.png);
}
.ui-icon-arrow-d {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_closed.png);
}
.ui-icon-delete {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_cancel.png);
}
.ui-icon-plus {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_plus.png);
}
.ui-icon-minus {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_minus.png);
}
.ui-icon-check {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_check.png);
}
.ui-icon-gear {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_gear.png);
}
.ui-icon-refresh {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_refresh.png);
}
.ui-icon-forward {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_send.png);
}
.ui-icon-back {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_back.png);
}
.ui-icon-grid {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_grid.png);
}
.ui-icon-star {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_star.png);
}
.ui-icon-alert {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_warning.png);
}
.ui-icon-info {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_info.png);
}
.ui-icon-home {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_home.png);
}
.ui-icon-search {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_search.png);
}
.ui-icon-call {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_call.png);
}
.ui-icon-rename {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_rename.png);
}
.ui-icon-scrolltop {
  width: 0.9090909090909092rem ! important;
  height: 0.9090909090909092rem ! important;
  top: 50% ! important;
  left: 50% ! important;
  margin-top: -0.4545454545454546rem ! important;
  margin-left: -0.4545454545454546rem ! important;
  background-image: url(images/controls/button/00_icon_jump.png);
}
.ui-icon-scrollleft {
  width: 0.9090909090909092rem ! important;
  height: 0.9090909090909092rem ! important;
  top: 50% ! important;
  left: 50% ! important;
  margin-top: -0.4545454545454546rem ! important;
  margin-left: -0.4545454545454546rem ! important;
  background-image: url(images/controls/button/00_icon_jump_left.png);
}
.ui-icon-expandable-divider-opened {
  width: 1.9090909090909092rem;
  height: 1.9090909090909092rem;
  position: absolute;
  right: 1.2727272727272727rem;
  top: 0rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(images/00_indexlist_icon_opened.png);
}
.ui-icon-expandable-divider-closed {
  width: 1.9090909090909092rem;
  height: 1.9090909090909092rem;
  position: absolute;
  right: 1.2727272727272727rem;
  top: 0rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(images/00_indexlist_icon_closed.png);
}
/* Pressed images */
.ui-btn-down-s .ui-icon-bg,
.ui-btn-down-s.ui-tizen-icon-bg {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/00_btn_circle_bg_press.png);
  z-index: 0;
}
.ui-btn-down-s .ui-icon-arrow-l {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_left_press.png);
}
.ui-btn-down-s .ui-icon-arrow-r {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_right_press.png);
}
.ui-btn-down-s .ui-icon-arrow-u {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_opened_press.png);
}
.ui-btn-down-s .ui-icon-arrow-d {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_closed_press.png);
}
.ui-btn-down-s .ui-icon-delete {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_cancel_press.png);
}
.ui-btn-down-s .ui-icon-plus {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_plus_press.png);
}
.ui-btn-down-s .ui-icon-minus {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_minus_press.png);
}
.ui-btn-down-s .ui-icon-check {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_check_press.png);
}
.ui-btn-down-s .ui-icon-gear {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_gear_press.png);
}
.ui-btn-down-s .ui-icon-refresh {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_refresh_press.png);
}
.ui-btn-down-s .ui-icon-forward {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_expand_send_press.png);
}
.ui-btn-down-s .ui-icon-back {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_back_press.png);
}
.ui-btn-down-s .ui-icon-grid {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_grid_press.png);
}
.ui-btn-down-s .ui-icon-star {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_star_press.png);
}
.ui-btn-down-s .ui-icon-alert {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_warning_press.png);
}
.ui-btn-down-s .ui-icon-info {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_info_press.png);
}
.ui-btn-down-s .ui-icon-home {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_home_press.png);
}
.ui-btn-down-s .ui-icon-search {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_search_press.png);
}
.ui-btn-down-s .ui-icon-call {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_call_press.png);
}
.ui-btn-down-s .ui-icon-rename {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_button_rename_press.png);
}
.ui-btn-down-s .ui-icon-scrolltop {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_icon_jump_press.png);
}
.ui-btn-down-s .ui-icon-scrollleft {
  /* Overlap original property */

  width: 1rem;
  height: 1rem;
  background-image: url(images/controls/button/00_icon_jump_left_press.png);
}
.ui-btn-inner.ui-btn-icon-only {
  padding: 0.7272727272727273rem 0.7272727272727273rem;
}
.ui-btn-icon-only .ui-btn-text {
  display: none;
  width: 0;
  height: 0;
  overflow: hidden;
}
/* No BG button : data-iconbg = "nobg" */
.ui-btn.ui-btn-icon-nobg {
  box-shadow: none;
}
.ui-btn-corner-circle {
  -o-border-radius: 1em ! important;
  -ms-border-radius: 1em ! important;
  -moz-border-radius: 1em ! important;
  -webkit-border-radius: 1em ! important;
  border-radius: 1em ! important;
}
.ui-btn-round {
  -o-border-radius: 1.2em ! important;
  -ms-border-radius: 1.2em ! important;
  -moz-border-radius: 1.2em ! important;
  -webkit-border-radius: 1.2em ! important;
  border-radius: 1.2em ! important;
}
.ui-btn-round .ui-btn-inner {
  -o-border-radius: 1.2em ! important;
  -ms-border-radius: 1.2em ! important;
  -moz-border-radius: 1.2em ! important;
  -webkit-border-radius: 1.2em ! important;
  border-radius: 1.2em ! important;
}
.ui-btn.ui-btn-icon-nobg,
.ui-btn .ui-btn-icon-nobg {
  background: transparent;
  background-color: transparent;
  border: none;
}
/* Contact Edit Style */
.ui-btn.ui-btn-edit .ui-btn-text {
  color: #f9f9f9;
}
.ui-btn.ui-btn-edit .ui-btn-inner {
  background: #c95858;
  background: -webkit-gradient(linear, left top, left bottom, from(#c95858), to(#a12828));
  background: -moz_linear-gradient(top, #c95858, #a12828);
}
/*
 * jQuery Mobile Collapsible CSS
 * for Tizen Web UI
 */
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-collapsible-inset {
  margin: .5em 0;
}
.ui-collapsible-inset .ui-collapsible-heading {
  margin: 0;
}
.ui-collapsible-inset .ui-collapsible-heading .ui-btn {
  border-right-width: 1px;
  border-left-width: 1px;
}
.ui-collapsible-collapsed + .ui-collapsible:not(.ui-collapsible-inset) .ui-collapsible-heading .ui-btn {
  border-top-width: 0;
}
.ui-collapsible-set .ui-collapsible:not(.ui-collapsible-inset) .ui-collapsible-heading .ui-btn {
  border-top-width: 1px;
}
.ui-collapsible-heading,
.ui-collapsible-content > li {
  position: relative;
}
.ui-collapsible-heading {
  font-size: 1rem;
  display: block;
  margin: 0 -15px;
  padding: 0;
  position: relative;
}
.ui-collapsible-heading .ui-btn {
  text-align: left;
  margin: 0;
  border-left-width: 0;
  border-right-width: 0;
}
.ui-collapsible-heading .ui-btn-text {
  color: #000000;
}
.ui-collapsible-heading .ui-btn-inner,
.ui-collapsible-heading .ui-btn-icon-left .ui-btn-inner {
  padding-left: 40px;
}
.ui-collapsible-heading .ui-btn-icon-right .ui-btn-inner {
  padding-left: 0px;
  padding-right: 40px;
}
.ui-collapsible-heading .ui-btn-icon-top .ui-btn-inner,
.ui-collapsible-heading .ui-btn-icon-bottom .ui-btn-inner {
  padding-right: 40px;
  text-align: center;
}
.ui-collapsible-heading .ui-btn-inner > .ui-icon-arrow-d {
  -webkit-transition: all 0.33s ease;
  -moz-transition: all 0.33s ease;
  -ms-transition: all 0.33s ease;
  -o-transition: all 0.33s ease;
  transition: all 0.33s ease;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.ui-collapsible-heading .ui-btn-inner > .ui-icon-arrow-u {
  background-image: url(images/controls/button/00_button_expand_closed.png);
  -webkit-transition: all 0.33s ease;
  -moz-transition: all 0.33s ease;
  -ms-transition: all 0.33s ease;
  -o-transition: all 0.33s ease;
  transition: all 0.33s ease;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
}
.ui-collapsible-heading .ui-btn span.ui-btn {
  position: absolute;
  left: 6px;
  top: 50%;
  margin: -12px 0 0 0;
  width: 20px;
  height: 20px;
  padding: 1px 0px 1px 2px;
  text-indent: -9999px;
}
.ui-collapsible-heading .ui-btn span.ui-btn .ui-btn-inner {
  padding: 10px 0;
}
.ui-collapsible-heading .ui-btn span.ui-btn .ui-icon {
  left: 0;
  margin-top: -10px;
}
.ui-collapsible-heading-status {
  position: absolute;
  top: -9999px;
  left: 0px;
}
.ui-collapsible-content {
  display: block;
  margin: 0 -15px;
  padding: 0px 15px;
  border-left-width: 0;
  border-right-width: 0;
  border-top: none;
  background-image: none;
  /* Overrides ui-body-* */

  visibility: visible;
  overflow: auto;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.ui-collapsible-inset .ui-collapsible-content {
  margin: 0;
  border-right-width: 1px;
  border-left-width: 1px;
}
.ui-collapsible-content-collapsed {
  overflow: hidden;
  max-height: 0px !important;
  visibility: hidden;
}
.ui-collapsible-set {
  margin: .5em 0;
}
.ui-collapsible-set .ui-collapsible {
  margin: -1px 0 0;
}
.ui-collapsible-set .ui-collapsible:first-child {
  margin-top: 0;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-dialog {
  min-height: 480px;
}
.ui-dialog .ui-header,
.ui-dialog .ui-content,
.ui-dialog .ui-footer {
  margin: 15px;
  position: relative;
}
.ui-dialog .ui-header,
.ui-dialog .ui-footer {
  z-index: 10;
  width: auto;
}
.ui-dialog .ui-header .ui-btn-left {
  width: 0px;
  border-width: 0px;
}
.ui-dialog .center_info {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
}
.ui-dialog .center_info .popup-text {
  font-size: 42px;
  background: #213c49;
  width: 100%;
}
.ui-dialog .center_info .popup-text p {
  text-align: center;
  padding: 22px 16px;
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-checkbox .ui-btn-inner,
.ui-radio .ui-btn-inner {
  white-space: normal;
}
.ui-checkbox,
.ui-radio {
  position: relative;
  margin: 0;
}
.ui-checkbox .ui-btn-corner-all,
.ui-radio .ui-btn-corner-all {
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-checkbox .ui-btn-inner,
.ui-radio .ui-btn-inner {
  border-top: 0;
}
.ui-checkbox .ui-btn-up-s,
.ui-radio .ui-btn-up-s {
  border: 0;
  background: transparent;
  font-weight: normal;
}
.ui-checkbox .ui-btn-hover-s,
.ui-radio .ui-btn-hover-s {
  border: 0;
  background: transparent;
  font-weight: normal;
}
.ui-checkbox .ui-btn-down-s,
.ui-radio .ui-btn-down-s {
  border: 0;
  background: transparent;
  font-weight: normal;
}
.ui-checkbox input,
.ui-radio input {
  z-index: 1;
  margin: 0px;
  left: 0.4545454545454546rem;
  position: absolute;
  outline: 0 !important;
}
.ui-checkbox > input,
.ui-radio > input {
  display: none;
}
.ui-checkbox .ui-btn,
.ui-radio .ui-btn {
  z-index: 2;
  height: 100%;
  margin: 0;
  text-align: left;
}
.ui-checkbox .ui-btn.ui-btn-icon-left,
.ui-radio .ui-btn.ui-btn-icon-left {
  display: inline-block;
}
.ui-checkbox .ui-btn.ui-btn-icon-left .ui-btn-inner,
.ui-radio .ui-btn.ui-btn-icon-left .ui-btn-inner {
  min-width: 1.8181818181818183rem;
  display: inline-block;
  line-height: 1.4545454545454546rem;
  padding: 0 0.7272727272727273rem 0 0.7272727272727273rem;
  /* TODO : after button fixed, recheck! */

}
.ui-checkbox .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text,
.ui-radio .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text {
  display: inline-block;
  vertical-align: middle;
  min-height: 1.4545454545454546rem;
}
.ui-checkbox .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text.ui-btn-text-padding-left,
.ui-radio .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text.ui-btn-text-padding-left {
  padding-left: 1.0909090909090908rem;
}
.ui-checkbox .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-icon,
.ui-radio .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-icon {
  position: absolute;
  top: 50%;
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  margin-top: -0.7272727272727273rem;
}
.ui-checkbox.favorite input {
  position: absolute;
  left: -10000px;
  height: 100%;
  outline: 0 !important;
}
.ui-checkbox.favorite .ui-btn.ui-btn-icon-left .ui-btn-inner {
  display: inline-block;
  line-height: 1.4545454545454546rem;
  padding: 0 0 0 0.7272727272727273rem;
  /* TODO : after button fixed, recheck! */

}
.ui-checkbox.favorite .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text {
  display: inline-block;
  vertical-align: middle;
}
.ui-checkbox.favorite .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-btn-text.ui-btn-text-padding-left {
  padding-left: 1.0909090909090908rem;
}
.ui-checkbox.favorite .ui-btn.ui-btn-icon-left .ui-btn-inner .ui-icon {
  position: absolute;
  top: 50%;
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  margin-top: -0.7272727272727273rem;
}
/* put img inside of checkbox(normal, favorite style) */
.ui-icon-checkbox-off,
.ui-icon-checkbox-on,
.favorite .ui-icon-checkbox-off,
.favorite .ui-icon-checkbox-on,
.ui-icon-checkbox-on-press,
.ui-icon-checkbox-off-press,
.ui-icon-radio-off,
.ui-icon-radio-on,
.ui-icon-radio-on-press,
.ui-icon-radio-off-press {
  background-size: 100% 100%;
  background-color: transparent;
}
.ui-icon-checkbox-off {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_check_bg.png);
}
.ui-icon-checkbox-on {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_check_activated.png), url(images/00_check_bg.png);
  background-repeat: no-repeat;
}
.ui-btn-down-s > .ui-btn-inner > .ui-icon-checkbox-off {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_check_press.png), url(images/00_check_press_bg.png);
  background-repeat: no-repeat;
}
.ui-btn-down-s > .ui-btn-inner > .ui-icon-checkbox-on {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_check_press.png), url(images/00_check_press_bg.png);
  background-repeat: no-repeat;
}
.favorite .ui-btn .ui-icon-checkbox-off,
.favorite .ui-btn .ui-icon-checkbox-off-press {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_icon_favorite_off.png);
}
.favorite .ui-btn .ui-icon-checkbox-on,
.favorite .ui-btn .ui-icon-checkbox-on-press {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_icon_favorite_on.png);
}
.ui-icon-radio-off {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_button_radio_bg.png);
}
.ui-icon-radio-on {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_button_radio_activated.png), url(images/00_button_radio_bg.png);
}
.ui-btn-down-s > .ui-btn-inner > .ui-icon-radio-on {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_button_radio_press.png), url(images/00_button_radio_press_bg.png);
}
.ui-btn-down-s > .ui-btn-inner > .ui-icon-radio-off {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_button_radio_press.png), url(images/00_button_radio_press_bg.png);
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
.ui-field-contain { padding: 1.5em 0; margin: 0; border-bottom-width: 1px; overflow: visible; }
.ui-field-contain:first-child { border-top-width: 0; }
@media all {
	.ui-field-contain { border-width: 0; padding: 0; margin: 0.8em 0; }
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
.ui-select { display: block; position: relative; }
.ui-select select { position: absolute; left: -9999px; top: -9999px; }
.ui-select .ui-btn { overflow: hidden; }
.ui-select .ui-btn select { cursor: pointer; -webkit-appearance: button; left: 0; top:0; width: 100%;  min-height: 1.5em; min-height: 100%; height: 3em; max-height: 100%; opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: alpha(opacity=0); z-index: 2; }
@-moz-document url-prefix() {.ui-select .ui-btn select { opacity: 0.0001; }}
.ui-select .ui-btn select.ui-select-nativeonly { opacity: 1; text-indent: 0; }

.ui-select .ui-btn-icon-right .ui-btn-inner { padding-right: 45px; } 
.ui-select .ui-btn-icon-right .ui-icon { right: 15px;  }

/* labels */
label.ui-select { font-size: 16px; line-height: 1.4;  font-weight: normal; margin: 0 0 .3em; display: block; }

/*listbox*/
.ui-select .ui-btn-text, .ui-selectmenu .ui-btn-text { display: block; min-height: 1em; }
.ui-select .ui-btn-text { text-overflow: ellipsis; overflow: hidden;}

.ui-selectmenu { position: absolute; padding: 0; z-index: 100 !important; width: 80%; max-width: 350px; padding: 6px; }
.ui-selectmenu .ui-listview { margin: 0; }
.ui-selectmenu .ui-btn.ui-li-divider { cursor: default; }
.ui-selectmenu-hidden { top: -9999px; left: -9999px; }
.ui-selectmenu-screen { position: absolute; top: 0; left: 0; width: 100%; height: 100%;  z-index: 99; }
.ui-screen-hidden, .ui-selectmenu-list .ui-li .ui-icon { display: none; }
.ui-selectmenu-list .ui-li .ui-icon { display: block; }
.ui-li.ui-selectmenu-placeholder { display: none; }
.ui-selectmenu .ui-header .ui-title { margin: 0.6em 46px 0.8em; }

@media all and (min-width: 450px){
	label.ui-select { vertical-align: top;  display: inline-block;  width: 20%;  margin: 0 2% 0 0; }
	.ui-select { width: 60%; display: inline-block; }
}

/* when no placeholder is defined in a multiple select, the header height doesn't even extend past the close button.  this shim's content in there */
.ui-selectmenu .ui-header h1:after { content: '.'; visibility: hidden; }
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
label.ui-input-text {
  font-size: 1rem;
  line-height: 1.2;
  display: block;
  font-weight: normal;
  margin: 0 0 .3em;
}
input.ui-input-text,
textarea.ui-input-text {
  background: #e3e1d9;
  background-image: none;
  padding: .4em;
  line-height: 1.4;
  font-size: 0.7272727272727273rem;
  display: block;
  -ms-border-radius: .1em;
  -o-border-radius: .1em;
  -webkit-border-radius: .1em;
  -moz-border-radius: .1em;
  border-radius: .1em;
}
input.ui-input-text.ui-focus,
textarea.ui-input-text.ui-focus {
  border: 1px solid #007bda;
}
input.ui-input-text {
  appearance: none;
  -webkit-appearance: none;
}
textarea.ui-input-text {
  height: 2.272727272727273rem;
  width: 95%;
  resize: none;
  -webkit-transition: height 200ms linear;
  transition: height 200ms linear;
  white-space: normal;
}
.ui-input-search {
  position: relative;
  padding-right: 1.7272727272727273rem;
  padding-left: 1.7272727272727273rem;
  border: 1px solid #626675;
  /* temporarily delete 06.28 Heeju Joo*/

  /*.ui-input-clear-hidden { display: none; }*/

}
.ui-input-search input.ui-input-text {
  width: 100%;
  border: none;
  background: transparent none;
  outline: 0 !important;
}
.ui-input-search .ui-btn-down-s,
.ui-input-search .ui-btn-up-s,
.ui-input-search .ui-btn-hover-s {
  border: none;
  background: transparent none;
}
.ui-input-search .ui-btn-icon-notext.ui-input-clear {
  width: 1.6363636363636365rem;
  height: 1.5rem;
  display: inline-block;
}
.ui-input-search .ui-btn-icon-notext.ui-input-clear .ui-btn-inner {
  padding: 0.20454545454545456rem 0.36363636363636365rem 0.20454545454545456rem 0.36363636363636365rem;
}
.ui-input-search .ui-btn-inner .ui-icon-deleteSearch {
  margin: 0;
  width: 1.0227272727272727rem;
  height: 1.0227272727272727rem;
}
.ui-input-search .ui-input-clear {
  position: absolute;
  right: 0;
  top: 0;
  vertical-align: middle;
}
.ui-input-search.ui-focus {
  border: 1px solid #007bda;
}
/* search bar */
.ui-body-s > div > .ui-field-contain > .input-search-bar,
.ui-body-s > .ui-field-contain > .input-search-bar {
  margin: -2.1818181818181817rem -0.6818181818181819rem -1.4545454545454546rem -0.6818181818181819rem;
}
/* Need to confirm exact concept */
.input-search-bar {
  position: relative;
  background-color: #dedcd5;
  padding: 0.36363636363636365rem;
  vertical-align: middle;
}
.input-search-bar .ui-corner-all {
  -o-border-radius: 0.3em;
  -ms-border-radius: 0.3em;
  -moz-border-radius: 0.3em;
  -webkit-border-radius: 0.3em;
  border-radius: 0.3em;
}
.input-search-bar .ui-input-search {
  font-size: 0.7272727272727273rem;
  display: block;
  position: relative;
  background-color: #fafafa;
}
.input-search-bar .ui-input-search .ui-input-text {
  height: 1.4545454545454546rem;
  padding: 0px;
  margin-right: 1.7272727272727273rem;
}
.input-search-bar .ui-input-search .ui-input-text::-webkit-input-placeholder {
  color: #878580;
}
.input-search-bar .ui-input-search .ui-image-search {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 1.0227272727272727rem;
  height: 1.0227272727272727rem;
  margin-top: 0.20454545454545456rem;
  margin-left: 0.36363636363636365rem;
  margin-right: 0.36363636363636365rem;
}
.input-search-bar .ui-input-search-default {
  margin-right: 3.3181818181818183rem;
  -webkit-transition: all 400ms linear;
  transition: all 400ms linear;
}
.input-search-bar .ui-input-search-wide {
  margin-right: 0rem;
  -webkit-transition: all 400ms linear;
  transition: all 400ms linear;
}
.input-search-bar .ui-btn-icon-cancel.ui-input-cancel {
  display: inline-block;
  position: absolute;
  top: 0.36363636363636365rem;
  right: 0rem;
  height: 1.5rem;
  margin-right: 0.36363636363636365rem;
  box-shadow: 0px 1px 1px #fafafa inset, 0px 1px 1px #98948e;
  vertical-align: middle;
  padding: 0px;
  border-color: none;
  width: 3.090909090909091rem;
  -webkit-transition: all 400ms linear;
  transition: all 400ms linear;
}
.input-search-bar .ui-btn-icon-cancel.ui-input-cancel .ui-btn-inner {
  padding-top: 0.2727272727272727rem;
  padding-bottom: 0.2727272727272727rem;
}
.input-search-bar .ui-btn-icon-cancel.ui-input-cancel .ui-btn-inner .ui-btn-text {
  font-size: 0.6818181818181819rem;
}
.input-search-bar .ui-btn-icon-cancel.ui-input-cancel.ui-btn-cancel-hide {
  right: -3.409090909090909rem;
  visibility: hidden;
}
.input-search-bar .ui-btn-icon-cancel.ui-input-cancel.ui-btn-cancel-show {
  right: 0px;
  visibility: visible;
}
.input-search-bar .ui-search-bar-icon {
  margin-left: 1.8636363636363638rem;
}
.input-search-bar .ui-btn.ui-btn-search-front-icon {
  position: absolute;
  top: 0.29545454545454547rem;
  width: 1.6363636363636365rem;
  height: 1.6363636363636365rem;
  padding: 0;
  -o-border-radius: 0.8636363636363636rem ! important;
  -ms-border-radius: 0.8636363636363636rem ! important;
  -moz-border-radius: 0.8636363636363636rem ! important;
  -webkit-border-radius: 0.8636363636363636rem ! important;
  border-radius: 0.8636363636363636rem ! important;
  box-shadow: 0px 1px 1px #fafafa inset, 0px 1px 1px #98948e;
}
.input-search-bar .ui-btn.ui-btn-search-front-icon > .ui-btn-inner.ui-btn-icon-only {
  width: 1.0227272727272727rem;
  height: 1.0227272727272727rem;
  padding: 0.29545454545454547rem 0.3181818181818182rem 0.3181818181818182rem 0.29545454545454547rem;
  -o-border-radius: 0.8636363636363636rem ! important;
  -ms-border-radius: 0.8636363636363636rem ! important;
  -moz-border-radius: 0.8636363636363636rem ! important;
  -webkit-border-radius: 0.8636363636363636rem ! important;
  border-radius: 0.8636363636363636rem ! important;
}
.input-search-bar .ui-btn.ui-btn-search-front-icon > .ui-btn-inner.ui-btn-icon-only .ui-icon {
  width: 1.0227272727272727rem;
  height: 1.0227272727272727rem;
  margin: 0;
  background-position: 0 0;
  background-size: 1.0227272727272727rem 1.0227272727272727rem;
}
.ui-header .input-search-bar {
  border-top: 0.022727272727272728rem solid #acaaa3;
  padding-top: 0.36363636363636365rem;
  padding-bottom: 0.36363636363636365rem;
}
.ui-image-search {
  background-image: url(images/controls/00_search_icon.png);
  background-repeat: no-repeat;
  background-size: 1.0227272727272727rem 1.0227272727272727rem;
}
.ui-icon-deleteSearch {
  background-image: url(images/controls/00_field_btn_clear.png);
  background-repeat: no-repeat;
  background-size: 1.0227272727272727rem 1.0227272727272727rem;
}
.ui-icon-deleteSearch:active {
  background-image: url(images/controls/00_field_btn_clear_press.png);
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-controlgroup,
fieldset.ui-controlgroup {
  padding: 0;
  margin: .5em 0 1em;
}
.ui-bar .ui-controlgroup {
  margin: 0 .3em;
}
.ui-controlgroup-label {
  font-size: 1em;
  line-height: 1.4;
  font-weight: normal;
  margin: 0 0 .3em;
}
.ui-controlgroup-vertical .ui-controlgroup-controls {
  display: block;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn {
  background: #f7f5ed;
  border-radius: 0;
  border-color: #c7c5be;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn:first-child {
  border-top-left-radius: 0.3181818181818182rem;
  border-top-right-radius: 0.3181818181818182rem;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn:last-child {
  border-bottom-left-radius: 0.3181818181818182rem;
  border-bottom-right-radius: 0.3181818181818182rem;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-hover-s {
  border-radius: 0 !important;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-hover-s:first-child {
  border-top-left-radius: 0.3181818181818182rem !important;
  border-top-right-radius: 0.3181818181818182rem !important;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-hover-s:last-child {
  border-bottom-left-radius: 0.3181818181818182rem !important;
  border-bottom-right-radius: 0.3181818181818182rem !important;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-box-s {
  border-radius: 0;
  box-shadow: 0;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-box-s .ui-btn-inner {
  background: #f7f5ed;
  display: inline-block;
  border: none;
  border-radius: 0;
}
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"].ui-btn-down-s .ui-btn-inner .ui-btn-text,
.ui-controlgroup-vertical .ui-controlgroup-controls [data-role="button"] .ui-btn-active-s .ui-btn-inner .ui-btn-text {
  color: #252525;
}
.ui-controlgroup li {
  list-style: none;
}
.ui-controlgroup .ui-btn-inner {
  white-space: nowrap;
}
.ui-controlgroup .ui-checkbox label label,
.ui-controlgroup .ui-radio label {
  font-size: 1em;
}
.ui-controlgroup .ui-radio {
  width: 25%;
  overflow: hidden;
}
.ui-controlgroup .ui-radio label {
  text-align: center;
  white-space: nowrap;
}
.ui-controlgroup .ui-radio-on .ui-btn-inner {
  background: #f8f6ef;
}
.ui-controlgroup .ui-radio-on .ui-btn-inner .ui-btn-text {
  color: #252525;
}
.ui-controlgroup.ui-controlgroup-padding-more {
  padding-left: 2.6363636363636362rem;
}
.ui-controlgroup.ui-controlgroup-padding-back {
  padding-right: 2.6363636363636362rem;
}
.ui-controlgroup-vertical .ui-btn,
.ui-controlgroup-vertical .ui-checkbox,
.ui-controlgroup-vertical .ui-radio {
  margin: 0;
  border-bottom-width: 0;
}
.ui-controlgroup-vertical .ui-controlgroup-last {
  border-bottom-width: 1px;
}
.ui-controlgroup-vertical .ui-radio {
  width: 100%;
}
.ui-controlgroup-vertical .ui-radio label {
  text-align: left;
}
.ui-controlgroup-vertical .ui-radio label .ui-btn-inner {
  margin-left: 0.7272727272727273rem;
  margin-right: 0.7272727272727273rem;
}
.ui-controlgroup-horizontal {
  padding: 0;
}
.ui-controlgroup-horizontal .ui-btn {
  border-radius: 0;
  display: inline-block;
  margin-left: -0.18181818181818182rem;
  margin-right: -0.13636363636363635rem;
}
.ui-controlgroup-horizontal .ui-btn:first-child {
  border-top-left-radius: 0.3181818181818182rem;
  border-bottom-left-radius: 0.3181818181818182rem;
}
.ui-controlgroup-horizontal .ui-btn:last-child {
  border-top-right-radius: 0.3181818181818182rem;
  border-bottom-right-radius: 0.3181818181818182rem;
}
.ui-controlgroup-horizontal .ui-checkbox,
.ui-controlgroup-horizontal .ui-radio {
  float: left;
  margin: 0 -1px 0 0;
}
.ui-controlgroup-horizontal .ui-controlgroup-last {
  margin-right: 0;
}
.ui-controlgroup-horizontal [data-role="button"] {
  box-shadow: none;
  background: none;
}
.ui-controlgroup-horizontal [data-role="button"].ui-btn-down-s .ui-btn-inner .ui-btn-text,
.ui-controlgroup-horizontal [data-role="button"] .ui-btn-active-s .ui-btn-inner .ui-btn-text {
  color: #252525;
}
.ui-controlgroup-horizontal [data-role="button"] > .ui-btn-inner {
  border: 0px solid;
  box-shadow: none;
  padding-top: 0px;
  padding-bottom: 3px;
  padding-left: 0.4545454545454546rem;
  padding-right: 0.4545454545454546rem;
}
.ui-controlgroup-horizontal [data-role="button"].ui-btn-hover-s {
  border-radius: 0 !important;
}
.ui-controlgroup-horizontal [data-role="button"].ui-btn-hover-s:first-child {
  border-top-left-radius: 0.3181818181818182rem !important;
  border-bottom-left-radius: 0.3181818181818182rem !important;
}
.ui-controlgroup-horizontal [data-role="button"].ui-btn-hover-s:last-child {
  border-top-right-radius: 0.3181818181818182rem !important;
  border-bottom-right-radius: 0.3181818181818182rem !important;
}
.ui-controlgroup-horizontal label {
  width: 100%;
}
.ui-controlgroup-horizontal label > span.ui-btn-inner {
  padding-top: 0.13636363636363635rem;
  padding-bottom: 0.13636363636363635rem;
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
/*** less definitions ***/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/************************/
.ui-listview {
  margin: 0;
  counter-reset: listnumbering;
  border-top-color: #d3d1cb;
  /* listview: fonts for li with a link */

}
.ui-listview li.ui-btn > .ui-btn-hastxt > .ui-btn-text.ui-btn-text-padding-right {
  padding-right: 0rem;
}
.ui-listview .ui-li {
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
}
.ui-listview .ui-li > .ui-btn-inner {
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #d3d1cb;
  margin-left: 0.5909090909090909rem;
  margin-right: 0.5909090909090909rem;
}
.ui-listview .ui-li-static {
  background-color: #f8f6ef;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #d3d1cb;
  margin-left: 0.5909090909090909rem;
  margin-right: 0.5909090909090909rem;
}
.ui-listview .ui-li:not(.ui-li-divider):not(.ui-li-static) {
  min-height: 2.5rem;
}
.ui-listview .ui-li.ui-li-has-multiline:not(.ui-li-divider):not(.ui-li-static) {
  min-height: 2.8181818181818183rem;
}
.ui-listview li.ui-btn-up-s,
.ui-listview li.ui-btn-hover-s {
  background: none;
  background-color: #f8f6ef;
  color: #000000;
  box-shadow: none;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-listview li.ui-btn-down-s {
  background: none;
  background-color: #5787c2;
  color: #fafafa;
  box-shadow: none;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.ui-listview li.ui-btn-up-s > .ui-li > .ui-btn-text > a.ui-link-inherit,
.ui-listview li.ui-btn-hover-s > .ui-li > .ui-btn-text > a.ui-link-inherit {
  color: #000000;
}
.ui-listview li.ui-btn-down-s > .ui-li > .ui-btn-text > a.ui-link-inherit {
  color: #fafafa;
}
.ui-content .ui-listview {
  margin-left: -0.36363636363636365rem;
  margin-right: -0.36363636363636365rem;
  padding-bottom: 1px;
}
.ui-content .ui-listview .ui-listview {
  margin: 0;
}
.ui-content .ui-listview-inset {
  margin: 1em 0;
}
.ui-listview,
.ui-li,
.ui-collapsible-heading {
  list-style: none;
  padding: 0;
  font-size: 1rem;
}
.ui-li,
.ui-collapsible-heading,
.ui-li.ui-field-contain {
  display: block;
  margin: 0;
  position: relative;
  overflow: visible;
  text-align: left;
}
.ui-li .ui-btn {
  top: 50%;
  margin-top: -0.8em;
}
.ui-li h3,
.ui-collapsible-heading h3,
.ui-collapsible > .ui-collapsible-content h3,
.ui-listview li h3 {
  margin-top: 0px;
  margin-bottom: 0px;
  font-size: 1rem;
  font-weight: normal;
}
.ui-li form,
.ui-collapsible-heading form,
.ui-collapsible > .ui-collapsible-content form,
.ui-listview li form {
  display: inline-block;
}
.ui-li .ui-btn-text,
.ui-collapsible-heading .ui-btn-text,
.ui-collapsible > .ui-collapsible-content .ui-btn-text,
.ui-listview li .ui-btn-text {
  position: relative;
}
.ui-li .ui-btn-text a.ui-link-inherit,
.ui-collapsible-heading .ui-btn-text a.ui-link-inherit,
.ui-collapsible > .ui-collapsible-content .ui-btn-text a.ui-link-inherit,
.ui-listview li .ui-btn-text a.ui-link-inherit {
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li:last-child,
.ui-collapsible-heading:last-child,
.ui-collapsible > .ui-collapsible-content:last-child,
.ui-listview li:last-child,
.ui-li.ui-field-contain:last-child,
.ui-collapsible-heading.ui-field-contain:last-child,
.ui-collapsible > .ui-collapsible-content.ui-field-contain:last-child,
.ui-listview li.ui-field-contain:last-child {
  border-bottom-width: 1px;
}
.ui-li > .ui-btn-inner,
.ui-collapsible-heading > .ui-btn-inner,
.ui-collapsible > .ui-collapsible-content > .ui-btn-inner,
.ui-listview li > .ui-btn-inner,
.ui-li.ui-collapsible-heading > .ui-collapsible-heading-toggle,
.ui-collapsible-heading.ui-collapsible-heading > .ui-collapsible-heading-toggle,
.ui-collapsible > .ui-collapsible-content.ui-collapsible-heading > .ui-collapsible-heading-toggle,
.ui-listview li.ui-collapsible-heading > .ui-collapsible-heading-toggle {
  display: block;
  position: relative;
  padding: 0;
  border-width: 0;
}
.ui-li > .ui-btn-inner.ui-btn-hastxt,
.ui-collapsible-heading > .ui-btn-inner.ui-btn-hastxt,
.ui-collapsible > .ui-collapsible-content > .ui-btn-inner.ui-btn-hastxt,
.ui-listview li > .ui-btn-inner.ui-btn-hastxt {
  padding: 0px 0px;
}
.ui-li .ui-btn-inner a.ui-link-inherit,
.ui-collapsible-heading .ui-btn-inner a.ui-link-inherit,
.ui-collapsible > .ui-collapsible-content .ui-btn-inner a.ui-link-inherit,
.ui-listview li .ui-btn-inner a.ui-link-inherit,
.ui-li .ui-collapsible-heading-toggle > .ui-btn-inner,
.ui-collapsible-heading .ui-collapsible-heading-toggle > .ui-btn-inner,
.ui-collapsible > .ui-collapsible-content .ui-collapsible-heading-toggle > .ui-btn-inner,
.ui-listview li .ui-collapsible-heading-toggle > .ui-btn-inner,
.ui-li > li,
.ui-collapsible-heading > li,
.ui-collapsible > .ui-collapsible-content > li,
.ui-listview li > li,
.ui-li.ui-li-static,
.ui-collapsible-heading.ui-li-static,
.ui-collapsible > .ui-collapsible-content.ui-li-static,
.ui-listview li.ui-li-static {
  padding-top: 0.6818181818181819rem;
  padding-bottom: 0.6818181818181819rem;
  display: block;
  white-space: normal;
  border-left-width: 0px;
  border-right-width: 0px;
}
.ui-li .ui-btn-inner a.ui-link-inherit,
.ui-collapsible-heading .ui-btn-inner a.ui-link-inherit,
.ui-collapsible > .ui-collapsible-content .ui-btn-inner a.ui-link-inherit,
.ui-listview li .ui-btn-inner a.ui-link-inherit,
.ui-li .ui-collapsible-heading-toggle,
.ui-collapsible-heading .ui-collapsible-heading-toggle,
.ui-collapsible > .ui-collapsible-content .ui-collapsible-heading-toggle,
.ui-listview li .ui-collapsible-heading-toggle {
  white-space: normal;
  overflow: visible !important;
}
.ui-li .ui-toggle-switch:last-child,
.ui-collapsible-heading .ui-toggle-switch:last-child,
.ui-collapsible > .ui-collapsible-content .ui-toggle-switch:last-child,
.ui-listview li .ui-toggle-switch:last-child {
  top: 50%;
  margin-top: -0.7727272727272727rem;
  display: inline-block;
  position: absolute;
  right: -1px;
}
.ui-li [data-role="button"]:last-child,
.ui-collapsible-heading [data-role="button"]:last-child,
.ui-collapsible > .ui-collapsible-content [data-role="button"]:last-child,
.ui-listview li [data-role="button"]:last-child {
  position: absolute;
  right: 0px;
}
.ui-li .ui-radio:first-child,
.ui-collapsible-heading .ui-radio:first-child,
.ui-collapsible > .ui-collapsible-content .ui-radio:first-child,
.ui-listview li .ui-radio:first-child,
.ui-li .ui-checkbox:first-child,
.ui-collapsible-heading .ui-checkbox:first-child,
.ui-collapsible > .ui-collapsible-content .ui-checkbox:first-child,
.ui-listview li .ui-checkbox:first-child {
  position: absolute;
  top: 50%;
  margin-top: -0.6818181818181819rem;
  left: -0.2272727272727273rem;
  width: 1.3636363636363638rem;
  height: 1.3636363636363638rem;
}
.ui-li .ui-radio:first-child .ui-btn-inner,
.ui-collapsible-heading .ui-radio:first-child .ui-btn-inner,
.ui-collapsible > .ui-collapsible-content .ui-radio:first-child .ui-btn-inner,
.ui-listview li .ui-radio:first-child .ui-btn-inner,
.ui-li .ui-checkbox:first-child .ui-btn-inner,
.ui-collapsible-heading .ui-checkbox:first-child .ui-btn-inner,
.ui-collapsible > .ui-collapsible-content .ui-checkbox:first-child .ui-btn-inner,
.ui-listview li .ui-checkbox:first-child .ui-btn-inner {
  line-height: 0.9090909090909092rem;
  color: transparent;
}
.ui-li .ui-radio:first-child .ui-btn-inner .ui-icon,
.ui-collapsible-heading .ui-radio:first-child .ui-btn-inner .ui-icon,
.ui-collapsible > .ui-collapsible-content .ui-radio:first-child .ui-btn-inner .ui-icon,
.ui-listview li .ui-radio:first-child .ui-btn-inner .ui-icon,
.ui-li .ui-checkbox:first-child .ui-btn-inner .ui-icon,
.ui-collapsible-heading .ui-checkbox:first-child .ui-btn-inner .ui-icon,
.ui-collapsible > .ui-collapsible-content .ui-checkbox:first-child .ui-btn-inner .ui-icon,
.ui-listview li .ui-checkbox:first-child .ui-btn-inner .ui-icon {
  left: 0.2272727272727273rem;
}
.ui-li .ui-radio:first-child label.ui-btn-icon_only,
.ui-collapsible-heading .ui-radio:first-child label.ui-btn-icon_only,
.ui-collapsible > .ui-collapsible-content .ui-radio:first-child label.ui-btn-icon_only,
.ui-listview li .ui-radio:first-child label.ui-btn-icon_only,
.ui-li .ui-checkbox:first-child label.ui-btn-icon_only,
.ui-collapsible-heading .ui-checkbox:first-child label.ui-btn-icon_only,
.ui-collapsible > .ui-collapsible-content .ui-checkbox:first-child label.ui-btn-icon_only,
.ui-listview li .ui-checkbox:first-child label.ui-btn-icon_only {
  top: 0px;
  margin-top: 0px;
}
.ui-li img.ui-li-bigicon,
.ui-collapsible-heading img.ui-li-bigicon,
.ui-collapsible > .ui-collapsible-content img.ui-li-bigicon,
.ui-listview li img.ui-li-bigicon {
  position: absolute;
  width: 1.6363636363636365rem;
  height: 1.6363636363636365rem;
  top: 50%;
  margin-top: -0.8181818181818182rem;
}
.ui-li img.ui-li-bigicon:first-child,
.ui-collapsible-heading img.ui-li-bigicon:first-child,
.ui-collapsible > .ui-collapsible-content img.ui-li-bigicon:first-child,
.ui-listview li img.ui-li-bigicon:first-child {
  left: 0px;
}
.ui-li img.ui-li-bigicon:nth-child(2),
.ui-collapsible-heading img.ui-li-bigicon:nth-child(2),
.ui-collapsible > .ui-collapsible-content img.ui-li-bigicon:nth-child(2),
.ui-listview li img.ui-li-bigicon:nth-child(2) {
  left: 1.7272727272727273rem;
}
.ui-li img.ui-li-bigicon:last-child,
.ui-collapsible-heading img.ui-li-bigicon:last-child,
.ui-collapsible > .ui-collapsible-content img.ui-li-bigicon:last-child,
.ui-listview li img.ui-li-bigicon:last-child {
  right: 0.7272727272727273rem;
}
.ui-li .ui-li-color-bar + img.ui-li-bigicon:nth-child(2),
.ui-collapsible-heading .ui-li-color-bar + img.ui-li-bigicon:nth-child(2),
.ui-collapsible > .ui-collapsible-content .ui-li-color-bar + img.ui-li-bigicon:nth-child(2),
.ui-listview li .ui-li-color-bar + img.ui-li-bigicon:nth-child(2) {
  left: 0px;
}
.ui-li .ui-li-color-bar,
.ui-collapsible-heading .ui-li-color-bar,
.ui-collapsible > .ui-collapsible-content .ui-li-color-bar,
.ui-listview li .ui-li-color-bar {
  position: absolute;
  width: 0.13636363636363635rem;
  height: 100%;
  top: 0rem;
  left: -0.5909090909090909rem;
  background-color: #000000;
}
li.ui-li-thumbnail-right img.ui-li-bigicon.ui-li-thumb {
  left: auto;
  right: 0px;
  width: 2.272727272727273rem;
  height: 2.272727272727273rem;
  margin-top: -1.1363636363636365rem;
}
.ui-li.ui-li-has-multiline .ui-btn-inner a.ui-link-inherit,
.ui-li.ui-li-has-multiline.ui-li-static {
  padding-top: 0.3181818181818182rem;
  padding-bottom: 1.2727272727272727rem;
}
.ui-li.ui-li-has-multiline a {
  white-space: normal;
  overflow: visible !important;
  padding-right: 0.7272727272727273rem;
  /* ellipsis for normal text */

}
/********************************************/
/************  Add ellipsis *****************/
/********************************************/
.ui-li.ui-li-text-ellipsis .ui-btn-inner a.ui-link-inherit {
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li.ui-li-text-ellipsis a {
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li.ui-li-text-ellipsis.ui-li-static {
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
/********************************************/
/*************** Edit Field *****************/
/********************************************/
.ui-li > input {
  border-style: none;
  border-width: 0px;
  outline-color: #f8f6ef;
  font-size: 1.0454545454545454rem;
  line-height: 1;
  padding-top: 0px;
  padding-bottom: 0px;
  color: #e3e1d9;
}
/********************************************/
/*************** Divider ********************/
/********************************************/
.ui-listview li.ui-li-divider {
  background: #f8f6ef;
  color: #3b73b6;
  border-bottom-width: 0px;
  border-top-width: 0px;
  cursor: default;
  counter-reset: listnumbering;
  font-weight: bold;
  height: 1.2727272727272727rem;
  font-size: 0.7272727272727273rem;
}
.ui-listview li.ui-li-divider > .ui-btn-inner > .ui-btn-text {
  font-size: 0.7272727272727273rem;
}
.ui-listview li.ui-li-divider:active {
  background-color: #5787c2;
  color: #fafafa;
}
.ui-listview li.ui-li-divider:active .ui-divider-normal-line {
  background: #fafafa;
}
.ui-listview li.ui-li-divider.ui-btn {
  top: 0px;
  margin-top: 0rem;
  border-radius: 0px;
  font-size: 0.7272727272727273rem;
}
.ui-listview li.ui-li-divider.ui-btn .ui-btn-inner.ui-btn-hastxt {
  height: 100%;
  padding-left: 0px;
}
.ui-listview li.ui-li-divider.ui-btn .ui-btn-inner.ui-btn-hastxt .ui-btn-text {
  position: absolute;
  top: 0.2272727272727273rem;
  height: 0.8181818181818182rem;
  padding-right: 0.4545454545454546rem;
}
.ui-listview li.ui-li-divider:not(.ui-btn) {
  padding-top: 0.4545454545454546rem;
}
.ui-listview li.ui-li-divider:focus {
  outline: none;
}
.ui-listview li.ui-li-divider > .ui-btn-text {
  position: absolute;
  top: 0.4545454545454546rem;
  height: 0.8636363636363636rem;
  padding-left: 0.5909090909090909rem;
  padding-right: 0.5909090909090909rem;
}
.ui-listview li.ui-li-divider[data-style="dialogue"] {
  background-color: #f8f6ef;
  height: 1.0454545454545454rem;
  padding: 0px;
  padding-top: 0.7272727272727273rem;
  padding-bottom: 0rem;
  padding-left: 0.4545454545454546rem;
  margin-left: 0.18181818181818182rem;
  margin-right: 0.18181818181818182rem;
  font-size: 0.7272727272727273rem;
  font-weight: bold;
  color: #3b73b6;
}
.ui-listview li.ui-li-divider[data-style="check"] {
  height: 1.7272727272727273rem;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
}
.ui-listview li.ui-li-divider[data-style="check"] label {
  top: 0px;
  margin: 0;
}
.ui-listview li.ui-li-divider[data-style="check"] label .ui-btn-inner {
  z-index: 5;
  position: absolute;
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background: #f8f6ef;
  padding: 0;
}
.ui-listview li.ui-li-divider[data-style="check"] .ui-btn-text {
  padding-left: 1.6818181818181819rem;
}
.ui-listview li.ui-li-divider[data-style="check"]:active label .ui-btn-inner {
  background-color: #5787c2;
}
.ui-listview li.ui-li-divider .ui-divider-normal-line {
  display: inline-block;
  position: absolute;
  top: 1.3181818181818181rem;
  width: 100%;
  height: 0.09090909090909091rem;
  background: #0e68ad;
}
.ui-listview li.ui-li-divider.ui-btn-down-s {
  background: #3b73b6;
  color: #f8f6ef;
}
.ui-listview li.ui-li-divider.ui-btn-down-s .ui-divider-normal-line {
  background: #f8f6ef;
}
.ui-listview li.ui-li-divider.ui-btn-down-s label > .ui-btn-inner {
  background: #3b73b6;
}
.ui-listview li.ui-li-divider + li.ui-li-dialogue {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.ui-divider-expand-div {
  position: absolute;
  width: 4.454545454545455rem;
  height: 1.9090909090909092rem;
  top: 0.4545454545454546rem;
  right: 0px;
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: rgba(0, 0, 0, 0.5);
}
.ui-li-has-thumb:not(.ui-li-thumbnail-right) .ui-btn-inner a.ui-link-inherit,
.ui-li-has-thumb:not(.ui-li-thumbnail-right).ui-li-static {
  padding-left: 2.272727272727273rem;
}
.ui-li-has-thumb:not(.ui-li-thumbnail-right) .ui-li-text-sub {
  padding-left: 2.0454545454545454rem;
  padding-right: 0px;
  /* ellipsis for sub text */

}
.ui-li-has-checkbox .ui-btn-inner a.ui-link-inherit,
.ui-li-has-radio .ui-btn-inner a.ui-link-inherit,
.ui-li-has-checkbox.ui-li-static,
.ui-li-has-radio.ui-li-static {
  padding-left: 1.7272727272727273rem;
}
.ui-li-has-checkbox .ui-li-text-sub,
.ui-li-has-radio .ui-li-text-sub {
  padding-left: 1.7272727272727273rem;
}
.ui-li-has-thumb.ui-li-has-checkbox .ui-btn-inner a.ui-link-inherit,
.ui-li-has-thumb.ui-li-has-radio .ui-btn-inner a.ui-link-inherit,
.ui-li-has-thumb.ui-li-has-checkbox.ui-li-static,
.ui-li-has-thumb.ui-li-has-radio.ui-li-static {
  padding-left: 3.7272727272727275rem;
}
.ui-li-has-thumb.ui-li-has-checkbox .ui-li-text-sub,
.ui-li-has-thumb.ui-li-has-radio .ui-li-text-sub {
  padding-left: 3.7272727272727275rem;
}
.ui-li.ui-li-has-right-circle-btn .ui-btn-inner a {
  padding-right: 2.1818181818181817rem;
}
.ui-li.ui-li-has-right-btn:not(.ui-swipe) .ui-btn-inner a {
  padding-right: 3.590909090909091rem;
}
.ui-li.ui-li-thumbnail-right .ui-btn-inner a {
  padding-right: 2.3636363636363638rem;
}
.ui-li.ui-li-static.ui-li-has-right-circle-btn {
  padding-right: 2.1818181818181817rem;
}
.ui-li.ui-li-static.ui-li-has-right-btn:not(.ui-swipe) {
  padding-right: 3.590909090909091rem;
}
.ui-li.ui-li-static.ui-li-thumbnail-right {
  padding-right: 2.3636363636363638rem;
}
.ui-li-has-icon .ui-btn-inner a.ui-link-inherit,
.ui-li-has-icon.ui-li-static {
  min-height: 20px;
  padding-left: 40px;
}
.ui-li-has-icon .ui-li-text-sub {
  padding-left: 40px;
}
.ui-li-heading {
  font-size: 16px;
  font-weight: bold;
  display: block;
  margin: .6em 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li-thumb,
.ui-li-icon {
  position: absolute;
  left: 1px;
  top: 0;
  max-height: 3.272727272727273rem;
  max-width: 3.272727272727273rem;
}
.ui-listview * .ui-btn-inner > .ui-btn > .ui-btn-inner {
  border-top: 0px;
}
.ui-li-sub,
.ui-li-sub-setting {
  float: right;
  text-align: right;
  font-size: 0.7272727272727273rem;
  margin: .3em 0;
}
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* ~~~~~~~~~~~~~~              NEW   LIST   STYLE                   ~~~~~~~~~ */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.ui-li-text-sub {
  float: right;
  text-align: right;
  font-size: 0.7272727272727273rem;
  font-weight: bold;
  color: #4f4f4f;
  position: absolute;
  right: 0px;
  top: 0.9090909090909092rem;
  width: 95%;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li-text-sub > img {
  position: relative;
  width: 1rem;
  height: 1rem;
  margin: 0 0.36363636363636365rem 0 0.36363636363636365rem;
  vertical-align: bottom;
}
.ui-li-text-sub2 {
  float: right;
  text-align: right;
  font-size: 0.5454545454545454rem;
  font-weight: bold;
  color: #4f4f4f;
  position: absolute;
  right: 0px;
  top: 0.5454545454545454rem;
  width: 60%;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li-text-sub2 > img {
  width: 1rem;
  height: 1rem;
  margin: 0 0 0 0.36363636363636365rem;
}
/*
li:not(.ui-li-has-multiline) .ui-li-text-sub {
	position : absolute;
	right : 16 * @unit_base;
	top: 22 * @unit_base;
	margin-top: 0px;
}*/
.ui-li-has-multiline .ui-li-text-sub {
  position: absolute;
  text-align: left;
  right: auto;
  left: 0px;
  top: 1.590909090909091rem;
  margin-top: 0px;
  width: 90%;
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
.ui-li-has-multiline.ui-li-has-right-btn .ui-btn-inner a .ui-li-text-sub {
  width: 74%;
}
.ui-li-has-multiline.ui-li-has-right-btn.ui-li-has-thumb .ui-btn-inner a .ui-li-text-sub {
  width: 64%;
}
.ui-li-has-multiline.ui-li-static.ui-li-has-right-btn .ui-li-text-sub {
  width: 74%;
}
.ui-li-has-multiline.ui-li-static.ui-li-has-right-btn.ui-li-has-thumb .ui-li-text-sub {
  width: 64%;
}
.ui-li-icon-sub-right,
.ui-li-icon-sub {
  position: absolute;
  left: auto;
  width: 1rem;
  height: 1rem;
  margin: 0 0;
  margin-left: 8px;
}
.ui-li-icon-sub-right {
  right: 0.36363636363636365rem;
}
.ui-listview li.ui-li-dialogue {
  background: #efede5;
  margin-left: 0.36363636363636365rem;
  margin-right: 0.36363636363636365rem;
  padding-left: 0.4545454545454546rem;
  padding-right: 0.4545454545454546rem;
  border-style: solid;
  border-color: #8e9aa3;
  border-width: 1px;
  border-top-width: 0px;
}
.ui-listview li.ui-li-dialogue > .ui-btn-inner {
  margin-left: 0px;
  margin-right: 0px;
  border-bottom-width: 0px;
}
.ui-listview li.ui-li-dialogue:first-child {
  border-top-width: 1px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.ui-listview li.ui-li-dialogue:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
.ui-listview li.ui-li-dialogue > img {
  margin-left: 0.2727272727272727rem;
}
.ui-listview li.ui-li-dialogue [data-role="button"]:last-child {
  margin-right: 0.4545454545454546rem;
}
.ui-listview li.ui-li-dialogue .ui-link-inherit > .ui-btn {
  margin-right: 0px;
}
.ui-listview li.ui-li-dialogue.ui-li-static .ui-li-text-sub,
.ui-listview li.ui-li-dialogue.ui-li-static .ui-toggle-switch {
  right: 0.4545454545454546rem;
}
.ui-listview li.ui-li-dialogue.ui-li-static.ui-li-has-checkbox,
.ui-listview li.ui-li-dialogue.ui-li-static.ui-li-has-radio {
  padding-left: 2rem;
}
.ui-listview li.ui-li-dialogue.ui-li-static .ui-checkbox,
.ui-listview li.ui-li-dialogue.ui-li-static .ui-radio {
  left: 0px;
}
.ui-listview li.ui-li-dialogue.ui-li-has-multiline.ui-li-static .ui-li-text-sub {
  padding-left: 0.4545454545454546rem;
}
.ui-listview li.ui-li-dialogue.ui-li-has-multiline.ui-li-static .ui-li-text-sub2 {
  padding-right: 0.4545454545454546rem;
}
.ui-listview li.ui-li-dialogue.ui-li-has-multiline.ui-li-static.ui-li-has-checkbox .ui-li-text-sub,
.ui-listview li.ui-li-dialogue.ui-li-has-multiline.ui-li-static.ui-li-has-radio .ui-li-text-sub {
  padding-left: 1.9090909090909092rem;
}
.ui-listview li.ui-li-divider + .ui-li-dialogue {
  border-top-width: 1px;
}
.ui-listview > li.ui-li-dialogue.ui-btn-hover-up-s:not(.ui-btn-down-s):not(.ui-li-expanded),
.ui-listview > li.ui-li-dialogue.ui-btn-up-s:not(.ui-li-expanded) {
  background: #efede5;
}
.ui-listview > li.ui-li-dialogue.ui-btn-down-s:not(.ui-li-expanded) {
  background: #5787c2;
}
.ui-listview > li.ui-li-dialogue.ui-li-expanded {
  padding-left: 1.1818181818181819rem;
  background: #dcdad3;
}
.ui-listview > li.ui-li-dialogue.ui-li-divider {
  height: 1.4545454545454546rem;
  padding: 0px;
}
.ui-listview > li.ui-li-group-title {
  padding-top: 1.4545454545454546rem;
}
.ui-listview > li.ui-li-group-title span {
  padding-left: 0.7272727272727273rem;
}
.ui-listview > li.ui-li-dialogue-divider {
  padding-top: 0.9090909090909092rem;
  padding-bottom: 0rem;
  padding-left: 0.4545454545454546rem;
  margin-left: 0.18181818181818182rem;
  margin-right: 0.18181818181818182rem;
  background: #efede5;
  font-size: 0.7272727272727273rem;
  font-weight: bold;
  color: #3b73b6;
}
.ui-listview li.ui-li-dialogue-edit {
  padding-left: 5.2727272727272725rem;
  padding-top: 0.5454545454545454rem;
  padding-bottom: 0.5454545454545454rem;
}
.ui-listview li.ui-li-dialogue-edit .ui-edit-title {
  position: absolute;
  left: 0.4545454545454546rem;
  width: 4.136363636363637rem;
  padding-right: 0.36363636363636365rem;
  display: inline-block;
  top: 50%;
  margin-top: -0.5909090909090909rem;
  border-right-color: #b9b8b2;
  border-right-width: 1px;
  border-right-style: solid;
}
.ui-listview li.ui-li-dialogue-edit input {
  font-size: 1rem;
  background: transparent;
  outline-color: transparent;
  width: 100%;
  padding-left: 0px;
  padding-right: 0px;
  border: none;
  color: #000000;
}
.ui-listview > .ui-li.ui-li-dialogue-edit.ui-li-has-right-btn {
  padding-right: 5rem;
}
.ui-listview .ui-li-bubble-receive,
.ui-listview .ui-li-bubble-left,
.ui-listview .ui-li-bubble-sent,
.ui-listview .ui-li-bubble-right,
.ui-listview .ui-li-bubble-sos {
  display: inline-block;
  background-clip: padding-box;
  max-width: 100%;
  word-wrap: break-word;
  font-size: 0.8636363636363636rem;
}
.ui-listview .ui-li-bubble-receive p,
.ui-listview .ui-li-bubble-left p,
.ui-listview .ui-li-bubble-sent p,
.ui-listview .ui-li-bubble-right p,
.ui-listview .ui-li-bubble-sos p,
.ui-listview .ui-li-bubble-receive span,
.ui-listview .ui-li-bubble-left span,
.ui-listview .ui-li-bubble-sent span,
.ui-listview .ui-li-bubble-right span,
.ui-listview .ui-li-bubble-sos span {
  font-size: 0.8636363636363636rem;
}
.ui-listview .ui-li-bubble-receive img,
.ui-listview .ui-li-bubble-left img,
.ui-listview .ui-li-bubble-sent img,
.ui-listview .ui-li-bubble-right img,
.ui-listview .ui-li-bubble-sos img {
  position: relative;
  min-width: 7.272727272727273rem;
  min-height: 7.272727272727273rem;
}
.ui-listview .ui-li-bubble-receive:first-child,
.ui-listview .ui-li-bubble-left:first-child,
.ui-listview .ui-li-bubble-sent:first-child,
.ui-listview .ui-li-bubble-right:first-child,
.ui-listview .ui-li-bubble-sos:first-child {
  margin-top: 0.6818181818181819rem;
}
.ui-listview .ui-li-static.ui-li-bubble-receive,
.ui-listview .ui-li-static.ui-li-bubble-left {
  margin-left: 0px;
  margin-right: 4.545454545454546rem;
  border-image-source: url(images/00_messagebubble_bg_receive.9.png);
  border-image-slice: 60 22 19 57 fill;
  border-image-width: auto;
  padding: 9px 14px 21px 48px;
  color: #000000;
}
.ui-listview .ui-li-static.ui-li-bubble-receive > .ui-li-bubble-time,
.ui-listview .ui-li-static.ui-li-bubble-left > .ui-li-bubble-time {
  margin-left: 0.3181818181818182rem;
  position: absolute;
  display: inline-block;
  bottom: 0.5454545454545454rem;
  left: 100%;
  font-size: 0.5rem;
  text-align: left;
  color: #8b8b8b;
}
.ui-listview .ui-li-static.ui-li-bubble-sent,
.ui-listview .ui-li-static.ui-li-bubble-right {
  margin-left: 4.545454545454546rem;
  margin-right: 0px;
  border-image-source: url(images/00_messagebubble_bg_sent.9.png);
  border-image-slice: 55 47 20 13 fill;
  border-image-width: auto;
  padding: 9px 47px 20px 13px;
  color: #000000;
}
.ui-listview .ui-li-static.ui-li-bubble-sent > .ui-li-bubble-time,
.ui-listview .ui-li-static.ui-li-bubble-right > .ui-li-bubble-time {
  margin-right: 0.3181818181818182rem;
  text-align: right;
  color: #8b8b8b;
  position: absolute;
  display: inline-block;
  bottom: 0.5454545454545454rem;
  right: 100%;
  font-size: 0.5rem;
}
.ui-listview .ui-li-static.ui-li-bubble-sos {
  color: #e94949;
}
.ui-listview .ui-li-static.ui-li-bubble-sos > .ui-li-bubble-time {
  color: #e94949;
}
.ui-listview .ui-li-static.ui-li-bubble-date {
  color: #686868;
  font-style: italic;
  width: auto;
  height: 1.0909090909090908rem;
  background-image: url(images/00_messagebubble_date_bg.png);
  background-repeat: repeat-x;
  background-position: center center;
  font-size: 0.7272727272727273rem;
  margin: 0.9090909090909092rem 0.2727272727272727rem;
  border: 0px none red;
  padding: 0 0;
  padding-top: 0.5em;
  margin-left: 23px;
  margin-right: 23px;
  text-align: center;
}
.ui-listview .ui-li-static.ui-li-bubble-date * {
  display: inline-block;
  background-color: #f8f6ef;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.ui-listview span.ui-li-bubble-time {
  font-weight: bold;
  width: 3.181818181818182rem;
}
@-webkit-keyframes addliitem {
  from {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    opacity: 0;
  }
  to {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    opacity: 1;
  }
}
.addli {
  -webkit-animation-name: addliitem;
  -moz-animation-name: addliitem;
  -webkit-animation-duration: 0.5s;
  -moz-animation-duration: 0.5s;
  -webkit-transition-timing-function: linear;
  -moz-transition-timing-function: linear;
}
@-webkit-keyframes removeliitem {
  from {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    opacity: 0;
  }
}
.removeli {
  -webkit-animation-name: removeliitem;
  -moz-animation-name: removeliitem;
  -webkit-animation-duration: 0.5s;
  -moz-animation-duration: 0.5s;
  -webkit-transition-timing-function: linear;
  -moz-transition-timing-function: linear;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-controlgroup .ui-radio > .ui-btn {
  background: #f8f6ef;
}
.ui-controlgroup .ui-btn-text {
  font-size: 0.7727272727272727rem;
  font-weight: bold;
  color: #3a3a3a;
}
.ui-controlgroup .ui-btn-inner .ui-corner-left .ui-controlgroup-first {
  -o-border-radius: .3em;
  -ms-border-radius: .3em;
  -moz-border-radius: .3em ;
  -webkit-border-radius: .3em ;
  border-radius: .3em ;
}
.ui-controlgroup .ui-btn-inner .ui-corner-right .ui-controlgroup-last {
  -o-border-radius: .3em;
  -ms-border-radius: .3em;
  -moz-border-radius: .3em ;
  -webkit-border-radius: .3em ;
  border-radius: .3em ;
}
.ui-controlgroup .ui-radio-off.ui-btn-hover-s.ui-btn-down-s .ui-btn-inner,
.ui-controlgroup .ui-radio-on .ui-btn-inner {
  color: #3b7796;
}
.ui-controlgroup .ui-radio-off .ui-btn-inner {
  color: #3a3a3a;
}
.ui-controlgroup.ui-controlgroup-horizontal .ui-radio .ui-btn-down-s .ui-btn-inner {
  background: #0e66aa;
}
/*
* jQuery Mobile Framework
* Copyright (c) jQuery Project
* Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
*/
/*** less definitions ***/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
ul.ui-virtual-list-container > li.position_absolute {
  position: absolute;
}
ul.ui-virtual-list-container > ul.position_absolute {
  position: absolute;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-scrollview-clip {
  position: relative;
}
.ui-scrollview-view {
  overflow-x: hidden;
  overflow-y: visible;
}
.ui-scrolllistview .ui-li-divider {
  z-index: 10;
}
.ui-scrollbar {
  position: absolute;
  overflow: hidden;
  opacity: 0;
}
.ui-scrollbar-visible {
  opacity: 1;
}
.ui-scrollbar-y {
  top: 0.09090909090909091rem;
  right: 0.09090909090909091rem;
  bottom: 0.09090909090909091rem;
  width: 0.36363636363636365rem;
}
.ui-scrollbar-x {
  right: 0.09090909090909091rem;
  bottom: 0.09090909090909091rem;
  left: 0.09090909090909091rem;
  height: 0.36363636363636365rem;
}
.ui-scrollbar-track {
  position: relative;
  width: 100%;
  height: 100%;
}
.ui-scrollbar-thumb {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #c6c4be;
}
.ui-scrollbar-y .ui-scrollbar-thumb {
  width: 0.2272727272727273rem;
  height: 100%;
  -o-border-radius: 0.09090909090909091rem;
  -ms-border-radius: 0.09090909090909091rem;
  -moz-border-radius: 0.09090909090909091rem;
  -webkit-border-radius: 0.09090909090909091rem;
  border-radius: 0.09090909090909091rem;
  -o-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.18181818181818182rem #000000;
  -ms-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.18181818181818182rem #000000;
  -moz-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.18181818181818182rem #000000;
  -webkit-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.18181818181818182rem #000000;
  box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.18181818181818182rem #000000;
}
.ui-scrollbar-x .ui-scrollbar-thumb {
  width: 100%;
  height: 0.2272727272727273rem;
  -o-border-radius: 0.09090909090909091rem;
  -ms-border-radius: 0.09090909090909091rem;
  -moz-border-radius: 0.09090909090909091rem;
  -webkit-border-radius: 0.09090909090909091rem;
  border-radius: 0.09090909090909091rem;
}
.ui-scroll-jump-top-bg {
  position: absolute;
  top: 0.4090909090909091rem;
  right: 0.5909090909090909rem;
  width: 1.6818181818181819rem;
  height: 1.6818181818181819rem;
}
.ui-scroll-jump-left-bg {
  position: absolute;
  bottom: 0.4090909090909091rem;
  left: 0.5909090909090909rem;
  width: 1.6818181818181819rem;
  height: 1.6818181818181819rem;
}
.ui-overflow-indicator-top {
  position: absolute;
  display: none;
  top: 0;
  width: 100%;
  height: 0.8181818181818182rem;
  opacity: 0.5;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(images/00_overscrolling_top.png);
}
.ui-overflow-indicator-bottom {
  position: absolute;
  display: none;
  bottom: 0;
  width: 100%;
  height: 0.8181818181818182rem;
  opacity: 0.5;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-image: url(images/00_overscrolling_bottom.png);
}
/*
 * the values below are for the group index
 */
/*
 * padding here set to zero - otherwise the list scrolls underneith the top heading and can be seen above it
 */
.ui-content.ui-scrollview-clip {
  padding: 0;
}
.ui-content.ui-scrollview-clip > div.ui-scrollview-view {
  margin: 0;
  padding-left: 0.36363636363636365rem;
  padding-right: 0.36363636363636365rem;
}
/*
 * this seems to effect how far the top divider is place wrt to the scrollview
 * without this, it is placed too high, so it is clipped in half
 */
.ui-content.ui-scrollview-clip > .ui-listview.ui-scrollview-view {
  margin: 0;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
@-webkit-keyframes ui-datetime-in {
  from {
    -webkit-transform: translateY(0.6363636363636364rem) scale(0.9);
  }
  to {
    -webkit-transform: translateY(0) scale(1);
  }
}
@-webkit-keyframes ui-datetime-out {
  from {
    opacity: 0.8;
    -webkit-transform: translateY(0) scale(0.6);
  }
  to {
    opacity: 0;
    -webkit-transform: translateY(-0.6363636363636364rem) scale(0.6);
  }
}
.ui-datefield {
  font-size: 0.7727272727272727rem;
}
.ui-datefield > div > span {
  vertical-align: middle;
  min-width: 1.5681818181818181rem;
  position: relative ! important;
  padding: 0;
}
.ui-datefield .ui-datefield-seperator,
.ui-datefield .ui-datefield-tab {
  display: inline-block;
  min-width: 0.5rem;
  text-align: center;
}
.ui-datefield .ui-datefield-tab > div {
  display: inline-block;
  width: 0.38636363636363635rem;
  height: 0.9545454545454546rem;
}
.ui-datefield .ui-datefield-tab > div.ui-divider-1st {
  border-right: 1px solid #b9b8b2;
}
.ui-datefield .ui-datefield-tab > div.ui-divider-2nd {
  border-left: 1px solid #ffffff;
}
.ui-datefield .date,
.ui-datefield .time,
.ui-datefield .ui-datefield-tab {
  display: inline-block;
}
.ui-datefield .ui-btn-box-s .ui-btn-inner.ui-btn-hastxt {
  padding: 0;
}
.ui-datefield span.ui-datefield-year,
.ui-datefield span.ui-datefield-month {
  min-width: 1.9090909090909092rem;
  /* except right&left padding */

  padding: 0 0.2272727272727273rem;
}
.ui-datefield .ui-datefield-selected {
  display: inline-block;
}
.ui-datefield .ui-datefield-selected.in {
  -ms-animation: ui-datetime-in 0.3s 1 ease;
  -o-animation: ui-datetime-in 0.3s 1 ease;
  -moz-animation: ui-datetime-in 0.3s 1 ease;
  -webkit-animation: ui-datetime-in 0.3s 1 ease;
}
.ui-datefield .ui-datefield-selected.out {
  -ms-animation: ui-datetime-out 0.3s 1 ease;
  -o-animation: ui-datetime-out 0.3s 1 ease;
  -moz-animation: ui-datetime-out 0.3s 1 ease;
  -webkit-animation: ui-datetime-out 0.3s 1 ease;
}
@media all and (orientation: landscape) and (device-aspect-ratio: 16/9) {
  .ui-datefield > div > span {
    min-width: 3.6136363636363638rem;
  }
  .ui-datefield span.ui-datefield-year,
  .ui-datefield span.ui-datefield-month {
    min-width: 5.204545454545455rem;
    /* except right&left padding */
  
  }
}
.ui-datetime {
  margin: 0;
  height: 1.6363636363636365rem;
}
.ui-datetime-text-main {
  position: relative;
  top: 0 ;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-top: 0.3em;
}
.ui-btn-picker {
  line-height: 1.0909090909090908rem;
}
.ui-datefield-period.ui-btn {
  width: 2.159090909090909rem;
  line-height: 1.3636363636363638rem;
  right: auto;
  position: relative ! important;
}
.ui-datetime-text-sub {
  top: 0.2272727272727273rem ! important;
  color: #3b73b6 ! important;
  background: transparent ! important;
  font-size: 0.7272727272727273rem ! important;
}
.ui-datetimepicker-selector ul {
  padding: 0;
  display: inline;
  list-style: none;
  vertical-align: middle;
  margin: 0;
}
.ui-datetimepicker-selector ul li {
  font-size: 1rem;
  float: left;
  padding: 0.6818181818181819rem 0.18181818181818182rem 0 0.18181818181818182rem;
  max-width: 5.454545454545455rem;
  min-width: 2.7272727272727275rem;
}
.ui-datetimepicker-selector ul li a.ui-link {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.7);
}
.ui-datetimepicker-selector ul li a.ui-link:hover {
  color: rgba(255, 255, 255, 0.7);
}
.ui-datetimepicker-selector ul li.current a.ui-link {
  color: #ffffff;
}
.ui-datetimepicker {
  left: 0 !important;
  padding: 0;
}
.ui-datetimepicker.ui-arrow-t {
  margin-top: 0.2272727272727273rem;
}
.ui-datetimepicker.ui-arrow-b {
  margin-top: -0.2272727272727273rem;
}
.ui-datetimepicker .ui-popupwindow-padding {
  background: #5787c2 !important;
  border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  -o-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.6) !important;
  border-width: 0 !important;
  text-align: center !important;
}
.ui-datetimepicker .ui-popupwindow-padding div {
  height: 2.409090909090909rem;
}
.ui-li-dialogue .ui-datefield {
  margin-top: 0.4090909090909091rem;
}
.ui-li-dialogue .ui-datefield .ui-datefield-seperator,
.ui-li-dialogue .ui-datefield .ui-datefield-tab {
  margin-top: -1em;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/* Resource color mapping table

@color_popup_title_bg:	popup_title_bg.png
@color_popup_text_bg:	popup_bg.png
@color_popup_button_bg:	popup_button_bg.png
@color_popup_font:		Popup title & default
@color_popup_text_font:	Popup text

*/
.ui-popupwindow-screen {
  background: #000000;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1200;
}
.ui-popupwindow {
  position: absolute;
  z-index: 1201 !important;
  color: #f8f6ef;
  background: #f8f6ef;
}
.ui-popupwindow .popup-title {
  width: 100%;
  height: 100%;
  font-size: 1.0909090909090908rem;
  background: #dbd9ce;
}
.ui-popupwindow .popup-title p {
  margin: 0rem 0rem;
  padding: 0.5909090909090909rem 0rem;
}
.ui-popupwindow .popup-text {
  width: 100%;
  color: #000000;
  font-size: 1.0909090909090908rem;
  background: #f8f6ef;
}
.ui-popupwindow .popup-text p {
  text-align: center;
  padding: 1rem 0.7272727272727273rem;
}
.ui-popupwindow .center_info {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
}
.ui-popupwindow .center_title {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_basic_1btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_basic_1btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_basic_1btn .popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  height: 3.3636363636363638rem;
  margin: auto;
}
.ui-popupwindow .center_basic_2btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_basic_2btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_basic_2btn .popup-button-bg .ui-btn {
  width: 12.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_basic_3btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_basic_3btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_basic_3btn .popup-button-bg .ui-btn {
  width: 8.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_title_1btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_title_1btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_title_1btn .popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  height: 3.3636363636363638rem;
  margin: auto;
}
.ui-popupwindow .center_title_2btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_title_2btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_title_2btn .popup-button-bg .ui-btn {
  width: 12.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_title_3btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_title_3btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_title_3btn .popup-button-bg .ui-btn {
  width: 8.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_button_vertical {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_button_vertical .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 1px;
  padding-bottom: 0.7272727272727273rem;
  vertical-align: middle;
}
.ui-popupwindow .center_button_vertical .popup-button-bg .ui-btn {
  width: 16.181818181818183rem;
  height: 3.3636363636363638rem;
  margin-top: 0.7272727272727273rem;
  margin-bottom: 0rem;
  margin-left: auto;
  margin-right: auto;
}
.ui-popupwindow .center_checkbox {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_checkbox .popup-check-bg {
  font-size: 1.0909090909090908rem;
  background: #f8f6ef;
  width: 100%;
  padding-top: 0rem;
  padding-bottom: 1rem;
  vertical-align: middle;
}
.ui-popupwindow .center_checkbox .popup-check-bg .ui-checkbox .ui-btn {
  text-align: center;
  background: #f8f6ef;
  border: 0rem;
}
.ui-popupwindow .center_checkbox .popup-check-bg .ui-checkbox .ui-btn .ui-btn-inner {
  border: 0rem;
}
.ui-popupwindow .center_checkbox .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_checkbox .popup-button-bg .ui-btn {
  width: 12.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_liststyle_1btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_liststyle_1btn .popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  height: 23.272727272727273rem;
}
.ui-popupwindow .center_liststyle_1btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_liststyle_1btn .popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  height: 3.3636363636363638rem;
  margin: auto;
}
.ui-popupwindow .center_liststyle_2btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_liststyle_2btn .popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  height: 23.272727272727273rem;
}
.ui-popupwindow .center_liststyle_2btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_liststyle_2btn .popup-button-bg .ui-btn {
  width: 12.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_liststyle_3btn {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_liststyle_3btn .popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  height: 23.272727272727273rem;
}
.ui-popupwindow .center_liststyle_3btn .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_liststyle_3btn .popup-button-bg .ui-btn {
  width: 8.454545454545455rem;
  height: 3.3636363636363638rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popupwindow .center_progressbar {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .center_progressbar .popup-text {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  height: 3.181818181818182rem;
}
.ui-popupwindow .center_progressbar .popup-text p {
  height: 100%;
  text-align: center;
  padding: 1rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
}
.ui-popupwindow .center_progressbar .popup-text-bottom-bg {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  vertical-align: middle;
}
.ui-popupwindow .center_progressbar .popup-text-bottom-bg .text-left {
  width: 40%;
  height: 2.1818181818181817rem;
  padding: 0rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
  text-align: left;
  display: inline-block;
}
.ui-popupwindow .center_progressbar .popup-text-bottom-bg .text-right {
  width: 40%;
  height: 2.1818181818181817rem;
  padding: 0rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
  text-align: right;
  display: inline-block;
}
.ui-popupwindow .center_progressbar .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .center_progressbar .popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  height: 3.3636363636363638rem;
  margin: auto;
}
.ui-popupwindow .center_progressbar .popup-progress-bg {
  background: #f8f6ef;
  width: 100%;
  height: 100%;
}
.ui-popupwindow .centertext_progressbar {
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  text-align: center;
}
.ui-popupwindow .centertext_progressbar .popup-text {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 0.7272727272727273rem;
}
.ui-popupwindow .centertext_progressbar .popup-text p {
  text-align: center;
}
.ui-popupwindow .centertext_progressbar .popup-text-bottom-bg {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  vertical-align: middle;
}
.ui-popupwindow .centertext_progressbar .popup-text-bottom-bg .text-left {
  width: 40%;
  height: 1.8181818181818183rem;
  padding: 0.7272727272727273rem 0.7272727272727273rem 1rem 0.7272727272727273rem;
  text-align: left;
  display: inline-block;
}
.ui-popupwindow .centertext_progressbar .popup-text-bottom-bg .text-right {
  width: 40%;
  height: 1.8181818181818183rem;
  padding: 0.7272727272727273rem 0.7272727272727273rem 1rem 0.7272727272727273rem;
  text-align: right;
  display: inline-block;
}
.ui-popupwindow .centertext_progressbar .popup-button-bg {
  font-size: 0.8181818181818182rem;
  background: #d6d3c9;
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  vertical-align: middle;
}
.ui-popupwindow .centertext_progressbar .popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  height: 3.3636363636363638rem;
  margin: auto;
}
.ui-popupwindow .centertext_progressbar .popup-progress-bg {
  background: #f8f6ef;
  width: 100%;
  height: 100%;
}
.ui-popupwindow .ui-btn {
  background: #f7f5ed;
  background: -webkit-gradient(linear, left top, left bottom, from(#f7f5ed), to(#eceae2));
  background: -moz-linear-gradient(top, #f7f5ed, #eceae2);
  background: -ms-linear-gradient(top, #f7f5ed, #eceae2);
  background: -o-linear-gradient(top, #f7f5ed, #eceae2);
  color: #3a3a3a;
}
.ui-popupwindow .ui-btn.ui-btn-hover-s {
  background: #f7f5ed;
}
.ui-popupwindow .ui-btn.ui-btn-down-s {
  background: #007ad8;
  background: -webkit-gradient(linear, left top, left bottom, from(#0066c4), to(#007ad8));
  background: -moz-linear-gradient(top, #0066c4, #007ad8);
  background: -ms-linear-gradient(top, #0066c4, #007ad8);
  background: -o-linear-gradient(top, #0066c4, #007ad8);
  color: #fafafa;
}
.ui-popupwindow > .ui-volumecontrol {
  display: table;
  margin: auto;
  background: rgba(0, 0, 0, 0.666667);
  width: 18.90909090909091rem;
  height: 30.727272727272727rem;
  padding-top: 1rem;
}
.ui-popupwindow > .ui-volumecontrol h1 {
  font-size: 1.0909090909090908rem;
  display: table;
  margin: auto;
  color: #c0c0c0;
}
.ui-popupwindow > .ui-volumecontrol .ui-volumecontrol-icon {
  display: table;
  width: 100%;
  height: 5.818181818181818rem;
  padding-top: 0.9545454545454546rem;
  padding-bottom: 0.9545454545454546rem;
  padding-left: 7.5rem;
  padding-right: 7.5rem;
}
.ui-popupwindow > .ui-volumecontrol .ui-volumecontrol-indicator {
  display: table;
  width: 100%;
  height: 19.09090909090909rem;
  padding-left: 3.090909090909091rem;
  padding-right: 3.090909090909091rem;
}
.ui-popupwindow > .ui-volumecontrol .ui-corner-all {
  -o-border-radius: 0.3em !important;
  -ms-border-radius: 0.3em !important;
  -moz-border-radius: 0.3em !important;
  -webkit-border-radius: 0.3em !important;
  border-radius: 0.3em !important;
}
.ui-popupwindow-corner-all {
  -o-border-radius: 0em !important;
  -ms-border-radius: 0em !important;
  -moz-border-radius: 0em !important;
  -webkit-border-radius: 0em !important;
  border-radius: 0em !important;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-ctxpopup {
  display: table;
}
.ui-ctxpopup :focus {
  outline: none;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-triangle-top {
  top: 2px;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-triangle-left {
  left: 2px;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-triangle-right {
  right: 2px;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-triangle-bottom {
  bottom: 2px;
}
.ui-ctxpopup .ui-ctxpopup-row {
  display: table-row;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-ctxpopup-cell {
  display: table-cell;
}
.ui-ctxpopup .ui-ctxpopup-row .ui-popupwindow-padding {
  background: #444444;
  border: none;
  -ms-box-shadow: 0rem 0rem 0.5454545454545454rem rgba(0, 0, 0, 0.6);
  -o-box-shadow: 0rem 0rem 0.5454545454545454rem rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 0rem 0rem 0.5454545454545454rem rgba(0, 0, 0, 0.6);
  -webkit-box-shadow: 0rem 0rem 0.5454545454545454rem rgba(0, 0, 0, 0.6);
  box-shadow: 0rem 0rem 0.5454545454545454rem rgba(0, 0, 0, 0.6);
  -o-border-radius: 0.3em;
  -ms-border-radius: 0.3em;
  -moz-border-radius: 0.3em;
  -webkit-border-radius: 0.3em;
  border-radius: 0.3em;
}
.ui-ctxpopup .ui-listview li.ui-btn-up-s,
.ui-ctxpopup .ui-listview li.ui-btn-hover-s {
  background: transparent;
}
.ui-ctxpopup .ui-listview li:last-child {
  border-bottom-left-radius: 0.3em;
  border-bottom-right-radius: 0.3em;
}
.ui-ctxpopup .ui-listview li:first-child {
  border-top-left-radius: 0.3em;
  border-top-right-radius: 0.3em;
}
.ui-ctxpopup .ui-listview {
  max-width: 28.181818181818183rem;
  border: none;
}
.ui-ctxpopup .ui-listview .ui-li {
  color: #ffffff;
  border-bottom-color: #2d2d2d;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-top-color: #5b5b5b;
  border-top-width: 1px;
  border-top-style: solid;
  margin-left: 0;
  margin-right: 0;
}
.ui-ctxpopup .ui-listview .ui-li:first-child {
  border-top-width: 0;
}
.ui-ctxpopup .ui-listview .ui-li:last-child {
  border-bottom-width: 0;
}
.ui-ctxpopup .ui-listview .ui-li .ui-btn-inner {
  margin: 0;
  padding-left: 0.4545454545454546rem;
  padding-right: 0.4545454545454546rem;
}
.ui-ctxpopup .ui-listview li.ui-btn-up-s > .ui-li > .ui-btn-text > a.ui-link-inherit,
.ui-ctxpopup .ui-listview li.ui-btn-hover-s > .ui-li > .ui-btn-text > a.ui-link-inherit,
.ui-ctxpopup .ui-listview li.ui-btn-down-s > .ui-li > .ui-btn-text > a.ui-link-inherit {
  color: #ffffff;
}
.ui-ctxpopup .horizontal {
  color: #ffffff;
}
.ui-ctxpopup .horizontal .icon .ui-btn {
  padding: 0;
  background: transparent ! important;
}
.ui-ctxpopup .horizontal .icon .ui-btn .ui-btn-icon-only {
  width: 4.363636363636363rem;
  height: 2.909090909090909rem;
  padding: 0;
}
.ui-ctxpopup .horizontal .icon .ui-btn .ui-icon {
  top: 0;
  height: inherit;
  width: inherit;
  margin: 0;
  background-position: center;
  -ms-background-size: 2.1818181818181817rem 2.1818181818181817rem;
  -moz-background-size: 2.1818181818181817rem 2.1818181818181817rem;
  -o-background-size: 2.1818181818181817rem 2.1818181818181817rem;
  -webkit-background-size: 2.1818181818181817rem 2.1818181818181817rem;
  background-size: 2.1818181818181817rem 2.1818181818181817rem;
}
.ui-ctxpopup .horizontal .text {
  padding: 0 0.4545454545454546rem;
  min-width: 2.1818181818181817rem;
}
.ui-ctxpopup .horizontal a.ui-link {
  color: #ffffff;
  text-decoration: none;
}
.ui-ctxpopup .horizontal ul {
  padding: 0;
  display: inline-block;
  list-style: none;
  vertical-align: middle;
  margin: 0;
}
.ui-ctxpopup .horizontal li {
  line-height: 1.4545454545454546rem;
  min-height: 1.4545454545454546rem;
  min-width: 2.1818181818181817rem;
  float: left;
  display: inline-block;
  border-right: 1px solid #5b5b5b;
  border-left: 1px solid #2d2d2d;
  text-align: center;
  border-bottom-width: 0;
  border-top-width: 0;
}
.ui-ctxpopup .horizontal li:first-of-type {
  border-top-left-radius: 0.3em;
  border-bottom-left-radius: 0.3em;
  border-top-right-radius: 0px ! important;
  border-left: none;
}
.ui-ctxpopup .horizontal li:last-of-type {
  border-top-right-radius: 0.3em;
  border-bottom-right-radius: 0.3em;
  border-bottom-left-radius: 0px ! important;
  border-right: none;
}
.ui-ctxpopup .horizontal .ui-li {
  border-bottom-width: 0;
  border-top-width: 0;
}
.ui-ctxpopup .horizontal .ui-li:first-child {
  border-left-width: 0px;
}
.ui-ctxpopup .horizontal .ui-li:last-child {
  border-right-width: 0px;
}
.ui-ctxpopup .horizontal li:active,
.ui-ctxpopup .horizontal td:active {
  background: #2a89c2;
}
.ui-ctxpopup .button table .ui-btn {
  margin: 0rem;
  padding: 0;
  height: 2.5454545454545454rem;
  width: 6rem;
}
.ui-ctxpopup .ui-scrollbar-thumb {
  background-color: #acafb4;
  opacity: 0.7;
  border: 1px solid #343434;
}
.ui-arrow {
  border-style: solid;
  border-width: 10px;
  width: 0;
  height: 0px;
  position: absolute;
}
.ui-arrow.top {
  border-color: transparent transparent #444444 transparent;
}
.ui-arrow.left {
  border-color: transparent transparent transparent #444444;
}
.ui-arrow.right {
  border-color: transparent #444444 transparent transparent;
}
.ui-arrow.bottom {
  border-color: #444444 transparent transparent transparent;
}
.ui-ctxpopup-container {
  z-index: 1200;
  display: inline-bloack;
  position: absolute;
  padding: 0;
  outline: 0;
}
.ui-ctxpopup-container .ui-popup {
  border: none;
  background: #444444;
  padding: 3px 2px 2px 2px;
  -o-border-radius: 0.3em;
  -ms-border-radius: 0.3em;
  -moz-border-radius: 0.3em;
  -webkit-border-radius: 0.3em;
  border-radius: 0.3em;
}
.ui-ctxpopup-container .ui-listview li:first-child {
  border-top-left-radius: 0.3em;
  border-top-right-radius: 0.3em;
}
.ui-ctxpopup-container .ui-listview .ui-li .ui-btn-inner {
  border-width: 0px;
}
.poptop {
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
}
.poptop.in {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  opacity: 1;
  -webkit-animation-name: scalepopin;
  -moz-animation-name: scalepopin;
  -webkit-animation-duration: 350ms;
  -moz-animation-duration: 350ms;
}
.poptop.out {
  -webkit-animation-name: fadeout;
  -moz-animation-name: fadeout;
  opacity: 0;
  -webkit-animation-duration: 100ms;
  -moz-animation-duration: 100ms;
}
.poptop.in.reverse {
  -webkit-animation-name: fadein;
  -moz-animation-name: fadein;
}
.poptop.out.reverse {
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -webkit-animation-name: scalepopout;
  -moz-animation-name: scalepopout;
}
@-webkit-keyframes scalepopin {
  from {
    -webkit-transform: scale(0.8);
    opacity: 0;
  }
  to {
    -webkit-transform: scale(1);
    opacity: 1;
  }
}
.popbottom {
  -webkit-transform-origin: 0% 100%;
  -moz-transform-origin: 0% 100%;
}
.popbottom.in {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  opacity: 1;
  -webkit-animation-name: scalepopin;
  -moz-animation-name: scalepopin;
  -webkit-animation-duration: 350ms;
  -moz-animation-duration: 350ms;
}
.popbottom.out {
  -webkit-animation-name: fadeout;
  -moz-animation-name: fadeout;
  opacity: 0;
  -webkit-animation-duration: 100ms;
  -moz-animation-duration: 100ms;
}
.popbottom.in.reverse {
  -webkit-animation-name: fadein;
  -moz-animation-name: fadein;
}
.popbottom.out.reverse {
  -webkit-transform: scale(0.8);
  -moz-transform: scale(0.8);
  -webkit-animation-name: scalepopout;
  -moz-animation-name: scalepopout;
}
@-moz-keyframes scalepopin {
  from {
    -moz-transform: scale(0.8);
    opacity: 0;
  }
  to {
    -moz-transform: scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes scalepopout {
  from {
    -webkit-transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.8);
    opacity: 0;
  }
}
@-moz-keyframes scalepopout {
  from {
    -moz-transform: scale(1);
    opacity: 1;
  }
  to {
    -moz-transform: scale(0.8);
    opacity: 0;
  }
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
@-webkit-keyframes ui-scale-animation {
  from {
    -webkit-transform: scaleX(0);
  }
  to {
    -webkit-transform: scaleX(1);
  }
}
.ui-progressbar-value {
  min-width: 0.4090909090909091rem;
  height: 100%;
  -o-border-radius: 0.2272727272727273rem;
  -ms-border-radius: 0.2272727272727273rem;
  -moz-border-radius: 0.2272727272727273rem;
  -webkit-border-radius: 0.2272727272727273rem;
  border-radius: 0.2272727272727273rem;
  box-shadow: 0px 1px 1px #ebebeb inset, 0px 1px 1px #666666;
  background-color: #007dde;
}
.ui-progressbar-bg {
  position: relative;
  overflow: hidden;
  top: 0.1590909090909091rem;
  min-width: 0.5454545454545454rem;
  height: 0.29545454545454547rem;
  margin-left: 0.13636363636363635rem;
  margin-right: 0.13636363636363635rem;
  -o-border-radius: 0.2272727272727273rem;
  -ms-border-radius: 0.2272727272727273rem;
  -moz-border-radius: 0.2272727272727273rem;
  -webkit-border-radius: 0.2272727272727273rem;
  border-radius: 0.2272727272727273rem;
  box-shadow: 0px 1px 1px #a4a4a4 inset, 0px 1px 1px #101010;
  background-color: #c5c5c5;
}
.ui-progressbar {
  position: relative;
  margin-left: 0.8181818181818182rem;
  margin-right: 0.8181818181818182rem;
  height: 0.6136363636363636rem;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/* Progress - circle style */
@-webkit-keyframes ui-rotate-animation {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
.ui-progress-container-circle {
  position: absolute;
}
.ui-li .ui-progress-container-circle {
  top: 22%;
}
.ui-progress-circle {
  position: relative;
  top: 0;
  height: 1.4545454545454546rem;
  width: 1.4545454545454546rem;
  background: url(images/00_list_process_01.png) no-repeat;
  -ms-background-size: 1.4545454545454546rem 1.4545454545454546rem;
  -moz-background-size: 1.4545454545454546rem 1.4545454545454546rem;
  -o-background-size: 1.4545454545454546rem 1.4545454545454546rem;
  -webkit-background-size: 1.4545454545454546rem 1.4545454545454546rem;
  background-size: 1.4545454545454546rem 1.4545454545454546rem;
}
.ui-progress-circle-running {
  -webkit-animation: ui-rotate-animation 1s infinite linear;
}
/* Progress - pending style */
@-webkit-keyframes animate-stripes {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 2.3636363636363638rem 0;
  }
}
.ui-progress-pending {
  position: relative;
  top: 0;
  width: 100%;
  height: 100%;
  padding-top: 0;
  padding-bottom: 0;
  background: -webkit-gradient(linear, left top, right bottom, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(25%, rgba(0, 0, 0, 0)), color-stop(25%, #007dde), color-stop(50%, #007dde), color-stop(50%, rgba(0, 0, 0, 0)), color-stop(75%, rgba(0, 0, 0, 0)), color-stop(75%, #007dde));
  box-shadow: 0 1px 0 #ebebeb inset;
  background-color: #c5c5c5;
  -o-border-radius: 0.2272727272727273rem;
  -ms-border-radius: 0.2272727272727273rem;
  -moz-border-radius: 0.2272727272727273rem;
  -webkit-border-radius: 0.2272727272727273rem;
  border-radius: 0.2272727272727273rem;
  -ms-background-size: 0.5909090909090909rem 0.5909090909090909rem;
  -moz-background-size: 0.5909090909090909rem 0.5909090909090909rem;
  -o-background-size: 0.5909090909090909rem 0.5909090909090909rem;
  -webkit-background-size: 0.5909090909090909rem 0.5909090909090909rem;
  background-size: 0.5909090909090909rem 0.5909090909090909rem;
}
.ui-progress-pending-running {
  -webkit-animation: animate-stripes 1s linear infinite;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
label.ui-slider {
  display: block;
}
select.ui-slider-switch {
  display: none;
}
.ui-slider-container {
  position: relative;
  vertical-align: middle;
  height: 0.6136363636363636rem;
  padding-top: 0.4090909090909091rem;
  padding-bottom: 0.4090909090909091rem;
  margin-left: 0.8181818181818182rem;
  margin-right: 0.8181818181818182rem;
}
.ui-li > .ui-slider-container {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.ui-slider-left-volume,
.ui-slider-left-bright {
  position: absolute;
  vertical-align: middle;
  top: -0.5rem;
  left: -2.272727272727273rem;
  height: 1.6363636363636365rem;
  width: 1.6363636363636365rem;
  background: url(images/controls/00_slider_button_brightness_01.png) no-repeat;
  -ms-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -moz-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -webkit-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  background-size: 1.6363636363636365rem 1.6363636363636365rem;
}
.ui-slider-left-volume {
  background: url(images/controls/00_slider_button_volume_01.png) no-repeat;
  -ms-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -moz-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -webkit-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  background-size: 1.6363636363636365rem 1.6363636363636365rem;
}
.ui-slider-right-volume,
.ui-slider-right-bright {
  position: absolute;
  top: -0.5rem;
  right: -2.272727272727273rem;
  height: 1.6363636363636365rem;
  width: 1.6363636363636365rem;
  vertical-align: middle;
  background: url(images/controls/00_slider_button_brightness_02.png) no-repeat;
  -ms-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -moz-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -webkit-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  background-size: 1.6363636363636365rem 1.6363636363636365rem;
}
.ui-slider-right-volume {
  background: url(images/controls/00_slider_button_volume_02.png) no-repeat;
  -ms-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -moz-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -webkit-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  background-size: 1.6363636363636365rem 1.6363636363636365rem;
}
.ui-slider-left-text {
  position: absolute;
  top: -0.5rem;
  height: 1.6818181818181819rem;
  text-align: center;
  color: #808080;
}
.ui-slider-right-text {
  position: absolute;
  top: -0.5rem;
  height: 1.6818181818181819rem;
  text-align: center;
  color: #808080;
}
div.ui-slider:not(.ui-toggle-switch) {
  position: relative;
  top: 0.20454545454545456rem;
  height: 0.29545454545454547rem;
  margin-left: 0.18181818181818182rem;
  margin-right: 0.18181818181818182rem;
  -o-border-radius: 0.4545454545454546rem;
  -ms-border-radius: 0.4545454545454546rem;
  -moz-border-radius: 0.4545454545454546rem;
  -webkit-border-radius: 0.4545454545454546rem;
  border-radius: 0.4545454545454546rem;
  -o-box-shadow: 0px 0px 2px #686665;
  -ms-box-shadow: 0px 0px 2px #686665;
  -moz-box-shadow: 0px 0px 2px #686665;
  -webkit-box-shadow: 0px 0px 2px #686665;
  box-shadow: 0px 0px 2px #686665;
  background-color: #c5c5c5;
}
div.ui-slider:not(.ui-toggle-switch) .ui-btn {
  top: -0.75rem;
  margin-top: 0;
}
div.ui-slider:not(.ui-toggle-switch) .ui-btn-inner {
  padding: 0.3rem 0 0 0;
}
div.ui-slider:not(.ui-toggle-switch) .ui-btn-text {
  color: #3b73b6;
}
div.ui-slider:not(.ui-toggle-switch) a.ui-slider-handle-press {
  background-image: url(images/controls/00_slider_handle_press.png);
}
div.ui-slider:not(.ui-toggle-switch) a.ui-slider-handle-press .ui-btn-text {
  color: #fafafa;
}
a.ui-slider-handle {
  position: relative;
  z-index: 10;
  width: 1.6363636363636365rem;
  height: 1.6363636363636365rem;
  margin-left: -0.8181818181818182rem;
  color: #3b73b6;
  font-size: 0.95rem;
  background: url(images/controls/00_slider_handle.png) no-repeat;
  -ms-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -moz-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -webkit-background-size: 1.6363636363636365rem 1.6363636363636365rem;
  background-size: 1.6363636363636365rem 1.6363636363636365rem;
  -o-box-shadow: none;
  -ms-box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.ui-slider-popup {
  position: absolute !important;
  z-index: 1210;
  width: 2.0454545454545454rem;
  height: 2.4545454545454546rem;
  padding-top: 0.1rem;
  color: #fafafa;
  text-align: center;
  font-size: 1.5rem;
  background: url(images/controls/00_slider_popup_bg.png) no-repeat;
  -ms-background-size: 2.0454545454545454rem 2.4545454545454546rem;
  -moz-background-size: 2.0454545454545454rem 2.4545454545454546rem;
  -o-background-size: 2.0454545454545454rem 2.4545454545454546rem;
  -webkit-background-size: 2.0454545454545454rem 2.4545454545454546rem;
  background-size: 2.0454545454545454rem 2.4545454545454546rem;
}
.ui-slider-bg {
  position: absolute;
  height: 0.29545454545454547rem;
  width: 0;
  -o-border-radius: 0.4545454545454546rem;
  -ms-border-radius: 0.4545454545454546rem;
  -moz-border-radius: 0.4545454545454546rem;
  -webkit-border-radius: 0.4545454545454546rem;
  border-radius: 0.4545454545454546rem;
  -o-box-shadow: 0px 0px 2px #686665;
  -ms-box-shadow: 0px 0px 2px #686665;
  -moz-box-shadow: 0px 0px 2px #686665;
  -webkit-box-shadow: 0px 0px 2px #686665;
  box-shadow: 0px 0px 2px #686665;
  background-color: #007dde;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-gallery {
  position: relative;
  width: 100%;
}
.ui-gallery-bg {
  display: none;
  position: absolute;
  text-align: center;
  width: 100%;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/* tickernoti */
@-webkit-keyframes ui-ticker-show {
  from {
    opacity: 0;
    -webkit-transform: translateY(-2.272727272727273rem);
    top: -2.272727272727273rem;
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    top: 0;
  }
}
@-webkit-keyframes ui-ticker-hide {
  from {
    opacity: 1;
    -webkit-transform: translateY(0);
    top: 0;
  }
  to {
    opacity: 0;
    -webkit-transform: translateY(-2.272727272727273rem);
    top: -2.272727272727273rem;
  }
}
.ui-ticker {
  position: fixed;
  display: none;
  left: 0;
  width: 100%;
  height: 2.272727272727273rem;
  z-index: 2147483547;
  background: #222222;
}
.ui-ticker.fix {
  display: block;
  top: 0;
}
.ui-ticker.show {
  display: block;
  -ms-animation: ui-ticker-show 0.8s 1 ease;
  -o-animation: ui-ticker-show 0.8s 1 ease;
  -moz-animation: ui-ticker-show 0.8s 1 ease;
  -webkit-animation: ui-ticker-show 0.8s 1 ease;
  top: 0;
}
.ui-ticker.hide {
  display: block;
  -o-animation: ui-ticker-hide 0.8s 1 ease;
  -ms-animation: ui-ticker-hide 0.8s 1 ease;
  -webkit-animation: ui-ticker-hide 0.8s 1 ease;
  top: -2.272727272727273rem;
}
.ui-ticker-btn {
  position: relative;
  margin-top: 0.4545454545454546rem;
  margin-left: 0.36363636363636365rem;
  margin-right: 0.36363636363636365rem;
  vertical-align: middle;
  float: right;
}
.ui-ticker-btn .ui-btn-inner {
  padding: 0.15rem 0 0 0;
  height: 1.2727272727272727rem;
  width: 3.5rem;
  font-size: 0.81rem;
}
.ui-ticker-icon {
  position: absolute;
  top: 0;
  height: 1.4545454545454546rem;
  width: 1.4545454545454546rem;
  margin-top: 0.4090909090909091rem;
  margin-bottom: 0.4090909090909091rem;
  margin-left: 0.36363636363636365rem;
  margin-right: 0.36363636363636365rem;
  vertical-align: middle;
}
.ui-ticker-text1-bg {
  position: absolute;
  top: 0;
  height: 0.8181818181818182rem;
  left: 2.1818181818181817rem;
  margin-top: 0.36363636363636365rem;
  font-size: 0.68rem;
  color: #fafafa;
}
.ui-ticker-text2-bg {
  position: absolute;
  top: 0;
  height: 0.7272727272727273rem;
  left: 2.1818181818181817rem;
  margin-top: 1.1818181818181819rem;
  font-size: 0.54rem;
  color: #fafafa;
}
/* smallpopup */
@-webkit-keyframes ui-smallpopup-show {
  from {
    opacity: 0;
    -webkit-transform: scaleY(0);
  }
  to {
    opacity: 1;
    -webkit-transform: scaleY(1);
  }
}
@-webkit-keyframes ui-smallpopup-hide {
  from {
    opacity: 1;
    left: 0;
    -webkit-transform: scaleY(1);
  }
  to {
    opacity: 0;
    left: 0;
    -webkit-transform: scaleY(0);
  }
}
.ui-smallpopup {
  position: fixed;
  display: none;
  left: 0;
  width: 100%;
  z-index: 1100;
  background: -webkit-linear-gradient(top, #f8f6ef 0%, #999999 18%, #444444 20%, #444444 100%);
  vertical-align: middle;
  font-size: 0.72rem;
  word-break: break-all;
}
.ui-smallpopup.fix {
  display: block;
}
.ui-smallpopup.show {
  display: block;
  -moz-animation: ui-smallpopup-show 0.5s 1 ease;
  -ms-animation: ui-smallpopup-show 0.5s 1 ease;
  -o-animation: ui-smallpopup-show 0.5s 1 ease;
  -webkit-animation: ui-smallpopup-show 0.5s 1 ease;
}
.ui-smallpopup.hide {
  display: block;
  left: -100%;
  -moz-animation: ui-smallpopup-hide 0.5s 1 ease;
  -ms-animation: ui-smallpopup-hide 0.5s 1 ease;
  -o-animation: ui-smallpopup-hide 0.5s 1 ease;
  -webkit-animation: ui-smallpopup-hide 0.5s 1 ease;
}
.ui-smallpopup-text-bg {
  position: relative;
  margin-top: 0.18181818181818182rem;
  margin-bottom: 0.18181818181818182rem;
  margin-left: 0.36363636363636365rem;
  margin-right: 0.36363636363636365rem;
  padding-top: 0.36363636363636365rem;
  color: #ffffff;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-swipe {
  padding: 0 !important;
  list-style-type: none;
}
.ui-swipe-item {
  height: 2.5454545454545454rem;
  -ms-user-select: none;
  -o-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -user-select: none;
  opacity: 0;
  text-align: center;
  background-color: #edebe4;
  margin-left: -0.5909090909090909rem;
  margin-right: -0.5909090909090909rem;
}
.ui-swipe-item .ui-btn {
  margin-top: -0.8181818181818182rem ! important;
  position: relative ! important;
}
.ui-swipe-item p {
  margin: 0;
}
.ui-swipe-item-cover {
  position: absolute;
  border: none;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  z-index: 100;
}
.ui-swipe-item-cover .ui-swipe-item-cover-inner {
  position: absolute;
  padding-top: 0.6818181818181819rem;
  padding-bottom: 0.6818181818181819rem;
  padding-left: 0.36363636363636365rem;
  width: 100%;
  text-align: left;
}
.ui-swipe-item-cover .ui-swipe-item-cover-inner .ui-li-text-sub {
  position: absolute;
  padding-right: 0.7272727272727273rem;
}
.ui-swipe-item-cover p {
  margin: 0;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-fastscroll {
  position: absolute;
  right: 0;
  width: 1.0681818181818181rem;
  -ms-user-select: none;
  -o-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  margin: 0;
  padding-left: 1px;
  padding-right: 0.045454545454545456rem;
  opacity: 1;
  background: -webkit-linear-gradient(left, transparent 1px, #f8f6ef 1px, #f8f6ef 0.13636363636363635rem, #e2dfd5 0.13636363636363635rem, #e2dfd5 1.0909090909090908rem, #f8f6ef 1.0909090909090908rem, #f8f6ef);
  background-color: #d1cfc9;
}
.ui-fastscroll ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.ui-fastscroll li {
  cursor: pointer;
  color: #a09f9a;
  background: #f8f6ef;
  text-align: center;
  vertical-align: middle;
  font-size: 0.5909090909090909rem;
  font-weight: bold;
  height: 0.5909090909090909rem;
  border: 0.06818181818181818rem solid transparent;
  margin-bottom: 1px;
}
.ui-fastscroll.ui-fastscroll-hover {
  background-color: #3b73b6;
}
li.ui-fastscroll-hover {
  position: relative;
  left: -1px;
  margin-top: -1px;
  margin-bottom: 0;
  padding-top: 1px;
  padding-bottom: 1px;
  width: 1rem;
  color: #3b73b6;
  border-color: #3b73b6;
  border-left-width: 0;
  padding-left: 1px;
}
li.ui-fastscroll-hover-first-item {
  margin-top: 0;
  padding-top: 0;
}
.ui-fastscroll-popup {
  position: absolute;
  background: #3b73b6;
  color: #ffffff;
  padding: 0.4545454545454546rem;
  border: 1px solid #112e51;
  border-radius: 2px;
  text-align: center;
  font-size: 3.409090909090909rem;
  font-weight: bold;
  display: none;
  box-sizing: border-box;
  left: 50%;
  top: 50%;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
div.ui-slider.ui-toggle-switch {
  position: relative;
  width: 3.090909090909091rem;
  height: 1.4545454545454546rem;
  background-image: url(images/00_button_on_off_bg.png);
  background-size: 100% 100%;
}
div.ui-slider.ui-toggle-switch .ui-slider-label {
  position: absolute;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-color: transparent;
}
div.ui-slider.ui-toggle-switch .ui-slider-inneroffset {
  position: relative;
  margin-left: 0.8181818181818182rem;
  margin-right: 1.0454545454545454rem;
}
div.ui-slider.ui-toggle-switch a.ui-slider-handle {
  position: absolute;
  width: 1.8636363636363638rem;
  height: 1.4545454545454546rem;
  -webkit-background-size: 100% 100%;
  margin-top: 0rem;
}
div.ui-slider.ui-toggle-switch a.ui-slider-handle.ui-toggle-on {
  background-image: url(images/00_button_on_handler.png);
  padding-right: 0;
}
div.ui-slider.ui-toggle-switch a.ui-slider-handle.ui-toggle-off {
  background-image: url(images/00_button_off_handler.png);
  padding-right: 0;
}
div.ui-slider.ui-toggle-switch a.ui-slider-handle-snapping {
  -webkit-transition: left 70ms linear;
}
.ui-slider-switch:not(.ui-toggle-switch) {
  width: 4.181818181818182rem;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) {
  position: relative;
  margin-top: 0.2272727272727273rem;
  margin-bottom: 0.2272727272727273rem;
  height: 1.4545454545454546rem;
  top: 0;
  margin: 0.2272727272727273rem;
  border-radius: 0.6818181818181819rem;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) .ui-slider-inneroffset {
  position: relative;
  margin: -1px 0.7272727272727273rem;
  z-index: 1;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) a.ui-slider-handle {
  position: absolute;
  background: #ffffff;
  background-image: -webkit-gradient(radial, 50% 50%, 0, 50% 50%, 50, from(#f9f9f9), to(#323232));
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  top: 50%;
  margin: 1px 0 0 -0.6818181818181819rem;
  border-radius: 0.6818181818181819rem;
  border: 2px solid gray;
  width: 1.2727272727272727rem;
  height: 1.2727272727272727rem;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) a.ui-slider-handle-snapping {
  -webkit-transition: left 70ms linear;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) span {
  position: absolute;
  overflow: hidden;
  text-align: center;
  height: 1.4545454545454546rem;
  font-weight: bold;
  font-size: 0.7272727272727273rem;
  border-radius: 0.6818181818181819rem;
  white-space: nowrap;
  line-height: 2;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) span.ui-slider-label-a {
  left: 0px;
  color: white;
  z-index: 1;
  text-indent: -1.5em;
}
div.ui-slider.ui-slider-switch:not(.ui-toggle-switch) span.ui-slider-label-b {
  right: 0px;
  color: #000000;
  z-index: 0;
  text-indent: 1.5em;
}
.ui-slider-switch .ui-slider-handle .ui-btn-inner {
  padding: 0;
}
.ui-triangle-container {
  position: relative;
}
.ui-triangle-container .ui-triangle {
  position: absolute;
  border-style: solid;
  border-color: transparent;
  border-width: 10px;
}
.ui-triangle-container .ui-triangle-top {
  top: 0px;
  border-top-width: 0px;
  border-left-color: transparent;
  border-right-color: transparent;
  margin-left: -10px;
}
.ui-triangle-container .ui-triangle-bottom {
  bottom: 0px;
  border-bottom-width: 0px;
  border-left-color: transparent;
  border-right-color: transparent;
  margin-left: -10px;
}
.ui-triangle-container .ui-triangle-left {
  left: 0px;
  margin-top: -10px;
  border-left-width: 0px;
  border-left-color: transparent;
  border-right-color: transparent;
}
.ui-triangle-container .ui-triangle-right {
  right: 0px;
  margin-top: -10px;
  border-right-width: 0px;
  border-left-color: transparent;
  border-right-color: transparent;
}
.ui-triangle-container-top {
  height: 10px;
  top: 0px;
  margin-top: -10px;
}
.ui-triangle-container-bottom {
  height: 10px;
  bottom: 0px;
  margin-bottom: -10px;
}
.ui-triangle-container-left {
  width: 10px;
}
.ui-triangle-container-right {
  width: 10px;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-tokentextarea {
  display: table;
  outline: none;
  position: relative;
  background-color: #f8f6ef;
}
.ui-tokentextarea .ui-tokentextarea-label {
  display: inline-block;
  position: relative;
  margin-left: .3em;
  margin-right: .3em;
  padding: .6em 0em;
  color: #666666;
  font-weight: bold;
  text-align: center;
  font-size: 1em;
}
.ui-tokentextarea-input {
  outline: none;
  position: relative;
  border: 0 !important;
  padding: 0 !important;
  margin: .5em;
  color: #222222;
  background-color: #f8f6ef !important;
  text-align: left;
  font-size: 1em;
}
.ui-tokentextarea-input-visible {
  display: inline-block !important;
}
.ui-tokentextarea-input-invisible {
  display: none !important;
}
.ui-tokentextarea div {
  display: inline-block;
  text-align: center;
  cursor: pointer;
  position: relative;
  margin: .3em;
  padding: .2em .5em;
  font-size: 1em;
  text-shadow: 0 2px rgba(0, 0, 0, 0.75);
  -ms-border-radius: .2em;
  -o-border-radius: .2em;
  -webkit-border-radius: .2em;
  -moz-border-radius: .2em;
  border-radius: .2em;
  -o-box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2);
  box-shadow: 0 0.1em 0.1em rgba(0, 0, 0, 0.2);
  color: #ffffff;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
div.ui-tokentextarea-block {
  background-color: #769dcc;
  border: 1px solid #6c7483;
}
div.ui-tokentextarea-sblock {
  background-color: #4093f7;
  border: 1px solid #595e6a;
}
.ui-tokentextarea .ui-tokentextarea-desclabel {
  display: inline-block;
  outline: none;
  position: relative;
  border: 0;
  color: #666666;
  text-align: left;
  font-size: 1em;
}
.ui-tokentextarea-link-base {
  position: absolute;
  right: 0em;
  bottom: 2px;
  margin-right: 0.4090909090909091rem;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-handler {
  position: absolute;
  overflow: hidden;
  opacity: 0;
}
.ui-handler-visible {
  opacity: 1;
}
.ui-handler-direction-y {
  top: 0.2272727272727273rem;
  right: 0rem;
  bottom: 0.2272727272727273rem;
  width: 0.8181818181818182rem;
}
.ui-handler-direction-x {
  right: 0.2272727272727273rem;
  bottom: 0rem;
  left: 0.2272727272727273rem;
  height: 0.8181818181818182rem;
}
.ui-handler-track {
  position: relative;
  width: 100%;
  height: 100%;
}
.ui-handler-handle {
  position: absolute;
  top: 0;
  left: 0;
}
.ui-handler-direction-x .ui-handler-handle {
  width: 5.318181818181818rem;
  height: 0.8181818181818182rem;
}
.ui-handler-direction-y .ui-handler-handle {
  width: 0.8181818181818182rem;
  height: 5.318181818181818rem;
}
.ui-handler-thumb {
  background-position: center;
  background-repeat: no-repeat;
  -o-border-radius: 0.25rem;
  -ms-border-radius: 0.25rem;
  -moz-border-radius: 0.25rem;
  -webkit-border-radius: 0.25rem;
  border-radius: 0.25rem;
}
.ui-handler-direction-y .ui-handler-thumb {
  width: 0.5227272727272727rem;
  height: 5.204545454545455rem;
  -ms-background-size: 0.5227272727272727rem 0.8409090909090909rem;
  -moz-background-size: 0.5227272727272727rem 0.8409090909090909rem;
  -o-background-size: 0.5227272727272727rem 0.8409090909090909rem;
  -webkit-background-size: 0.5227272727272727rem 0.8409090909090909rem;
  background-size: 0.5227272727272727rem 0.8409090909090909rem;
}
.ui-handler-direction-x .ui-handler-thumb {
  width: 5.204545454545455rem;
  height: 0.5227272727272727rem;
  -ms-background-size: 0.8409090909090909rem 0.5227272727272727rem;
  -moz-background-size: 0.8409090909090909rem 0.5227272727272727rem;
  -o-background-size: 0.8409090909090909rem 0.5227272727272727rem;
  -webkit-background-size: 0.8409090909090909rem 0.5227272727272727rem;
  background-size: 0.8409090909090909rem 0.5227272727272727rem;
}
/* S
-----------------------------------------------------------------------------------------------------------*/
.ui-handler-s .ui-handler-thumb {
  background-color: #c6c4be;
  -o-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.09090909090909091rem #000000;
  -ms-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.09090909090909091rem #000000;
  -moz-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.09090909090909091rem #000000;
  -webkit-box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.09090909090909091rem #000000;
  box-shadow: 0.045454545454545456rem 0.045454545454545456rem 0.09090909090909091rem #000000;
}
.ui-handler-s .ui-handler-direction-y .ui-handler-thumb {
  background-image: url("images/00_scroll_bar_handler.png");
}
.ui-handler-s .ui-handler-direction-x .ui-handler-thumb {
  background-image: url("images/00_scroll_bar_handler_hor.png");
}
/*
 * jQuery Mobile Framework
 * Copyright (c) jQuery Project
 * Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt)
 * licenses.
 */
/*** less definitions ***/
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-virtualgrid {
  overflow: hidden;
  position: absolute;
}
.ui-virtualgrid-wrapblock {
  position: absolute;
  left: 0;
}
.ui-virtualgrid-wrapblock-x {
  float: left;
  overflow: hidden;
}
.ui-scrollbar-thumb-x {
  width: 1.5rem !important;
}
.ui-scrollbar-thumb-y {
  height: 1.5rem !important;
}
.ui-virtualgrid-overflow-indicator-x-top {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  width: 56%;
  height: 100%;
  opacity: 0;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-image: url(./images/00_grid_overscrolling_left.png);
  pointer-events: none;
}
.ui-virtualgrid-overflow-indicator-x-bottom {
  position: absolute;
  display: block;
  right: 0;
  bottom: 0;
  width: 56%;
  height: 100%;
  opacity: 0;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-image: url(./images/00_grid_overscrolling_right.png);
  pointer-events: none;
}
.ui-virtualgrid-overflow-indicator-y-top {
  position: absolute;
  display: block;
  top: 0;
  width: 100%;
  height: 32%;
  opacity: 0;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-image: url(./images/00_grid_overscrolling_top.png);
  pointer-events: none;
}
.ui-virtualgrid-overflow-indicator-y-bottom {
  position: absolute;
  display: block;
  bottom: 0;
  width: 100%;
  height: 32%;
  opacity: 0;
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  background-image: url(./images/00_grid_overscrolling_bottom.png);
  pointer-events: none;
}
/*
 * padding here set to zero - otherwise the list scrolls underneith the top heading and can be seen above it
 */
.ui-content.ui-virtualgrid-content {
  padding: 0;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-multimediaview {
  background-color: #f9f9f9;
  overflow: hidden;
}
.ui-multimediaview-wrap {
  width: 100%;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.ui-multimediaview-siblings-off {
  display: none !important;
}
.ui-multimediaview-control span {
  display: inline-block;
}
.ui-multimediaview-video {
  position: absolute;
}
.ui-multimediaview-control {
  display: block;
  z-index: 1002;
  padding: 0;
  margin: 0;
  outline: 0;
  border: 0;
  height: 1.9090909090909092rem;
  text-align: left;
  overflow: hidden;
}
.ui-multimediaview-control span.ui-button {
  background-position: center center;
  background-size: 80%;
  background-repeat: no-repeat;
  width: 1.6818181818181819rem;
  height: 1.6818181818181819rem;
  margin: 0.09090909090909091rem;
}
.ui-multimediaview-control .ui-playpausebutton {
  float: left;
}
.ui-multimediaview-control .ui-timestamplabel {
  text-align: center;
  float: left;
}
.ui-multimediaview-control .ui-timestamplabel p {
  margin-top: -0.22272727272727275rem;
  margin-left: 0.09090909090909091rem;
  padding: 0;
  text-align: center;
  font-size: 0.5rem;
  line-height: 0.6363636363636364rem;
  text-align: left;
}
.ui-multimediaview-control .ui-durationlabel {
  text-align: center;
  float: right;
}
.ui-multimediaview-control .ui-durationlabel p {
  margin-top: -0.22272727272727275rem;
  margin-right: 0.09090909090909091rem;
  padding: 0;
  text-align: center;
  font-size: 0.5rem;
  line-height: 0.6363636363636364rem;
  text-align: right;
}
.ui-multimediaview-bar {
  margin-top: 0.22272727272727275rem;
  float: left;
}
.ui-multimediaview-bar-bg {
  height: 0.29545454545454547rem;
  border-radius: 1.5em;
}
.ui-multimediaview-bar-highlight {
  height: 0.29545454545454547rem;
  position: absolute;
  border-radius: 1.5em;
}
.ui-multimediaview-control .ui-seekbar {
  margin-left: 0.09090909090909091rem;
}
.ui-multimediaview-control .ui-seekbar .ui-duration {
  width: 100%;
}
.ui-multimediaview-control .ui-volumecontrol {
  width: 5rem;
  height: 100%;
  float: left;
}
.ui-multimediaview-control .ui-volumecontrol .ui-volumebar {
  margin-left: 0.6818181818181819rem;
}
.ui-multimediaview-control .ui-volumecontrol .ui-volumebar .ui-guide {
  width: 3.8636363636363638rem;
}
.ui-multimediaview-control .ui-volumecontrol .ui-volumebar .ui-handle {
  margin: 0;
  padding: 0;
  width: 0.6818181818181819rem;
  height: 0.6818181818181819rem;
}
.ui-fullscreen-parents {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden;
}
/* S
-----------------------------------------------------------------------------------------------------------*/
.ui-multimediaview-s .ui-multimediaview-video {
  background-color: rgba(248, 246, 239, 0.5);
}
.ui-multimediaview-s .ui-timestamplabel {
  color: #4a84c9;
}
.ui-multimediaview-s .ui-durationlabel {
  color: #808080;
}
.ui-multimediaview-s span.ui-button {
  background-color: #f7f5ed;
  -o-box-shadow: 0.5px 1px 1px #85837e;
  -ms-box-shadow: 0.5px 1px 1px #85837e;
  -moz-box-shadow: 0.5px 1px 1px #85837e;
  -webkit-box-shadow: 0.5px 1px 1px #85837e;
  box-shadow: 0.5px 1px 1px #85837e;
}
.ui-multimediaview-s span.ui-button-down {
  background-color: #007ad8;
}
.ui-multimediaview-s span.ui-play-icon {
  background-image: url(./images/00_button_play.png);
}
.ui-multimediaview-s span.ui-pause-icon {
  background-image: url(./images/00_button_pause.png);
}
.ui-multimediaview-s span.ui-volume-icon {
  background-image: url(./images/controls/00_slider_button_volume_02.png);
}
.ui-multimediaview-s span.ui-mute-icon {
  background-image: url(./images/controls/00_slider_button_volume_01.png);
}
.ui-multimediaview-s span.ui-fullscreen-on {
  background-image: url(./images/00_button_fullscreen_on.png);
}
.ui-multimediaview-s span.ui-fullscreen-off {
  background-image: url(./images/00_button_fullscreen_off.png);
}
.ui-multimediaview-s .ui-seekbar .ui-duration {
  background-color: #cbc8c5;
}
.ui-multimediaview-s .ui-seekbar .ui-currenttime {
  background-color: #4a84c9;
  box-shadow: 0px -1px 1px #686665 inset;
}
.ui-multimediaview-s .ui-volumebar .ui-guide {
  background-color: #cbc8c5;
}
.ui-multimediaview-s .ui-volumebar .ui-value {
  background-color: #4a84c9;
  box-shadow: 0px -1px 1px #686665 inset;
}
.ui-multimediaview-s .ui-volumebar .ui-handle {
  background-color: #fafafa;
  -o-box-shadow: inset 0px -1px 1px #000000;
  -ms-box-shadow: inset 0px -1px 1px #000000;
  -moz-box-shadow: inset 0px -1px 1px #000000;
  -webkit-box-shadow: inset 0px -1px 1px #000000;
  box-shadow: inset 0px -1px 1px #000000;
}
.ui-multimediaview-s .ui-volumebar .ui-button-down {
  background-color: #007ad8;
  -o-box-shadow: inset 0px 1px 1px #000000;
  -ms-box-shadow: inset 0px 1px 1px #000000;
  -moz-box-shadow: inset 0px 1px 1px #000000;
  -webkit-box-shadow: inset 0px 1px 1px #000000;
  box-shadow: inset 0px 1px 1px #000000;
}
.ui-popup-screen {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	position: absolute;
	filter: Alpha(Opacity=50);
	opacity: 0;
}

.ui-popup-screen-background-hack {
	background-color: black;
	filter: Alpha(Opacity=0);
}

@-webkit-keyframes popup-fadein {
    from { opacity: 0; }
    to { opacity: 0.5; }
}

@-moz-keyframes popup-fadein {
    from { opacity: 0; }
    to { opacity: 0.5; }
}

@-webkit-keyframes popup-fadeout {
    from { opacity: 0.5; }
    to { opacity: 0; }
}

@-moz-keyframes popup-fadeout {
    from { opacity: 0.5; }
    to { opacity: 0; }
}

.ui-popup-screen.fade.in {
	opacity: 0.5;
	-webkit-animation-name: popup-fadein;
	-moz-animation-name: popup-fadein;
}

.ui-popup-screen.fade.out {
	opacity: 0;
	-webkit-animation-name: popup-fadeout;
	-moz-animation-name: popup-fadeout;
}

.ui-popup.ui-content,
.ui-popup .ui-content {
	overflow: visible;
}

.ui-popup > img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	vertical-align: middle;
}
.ui-popup iframe {
	vertical-align: middle;
}

@media all and (min-width: 450px){
	.ui-popup .ui-field-contain label.ui-submit,
	.ui-popup .ui-field-contain .ui-controlgroup-label,
	.ui-popup .ui-field-contain label.ui-select,
	.ui-popup .ui-field-contain label.ui-input-text {
		font-size: 16px; line-height: 1.4; display: block; font-weight: normal; margin: 0 0 .3em;
	}
	.ui-popup .ui-field-contain .ui-btn.ui-submit,
	.ui-popup .ui-field-contain .ui-controlgroup-controls,
	.ui-popup .ui-field-contain .ui-select,
	.ui-popup .ui-field-contain input.ui-input-text,
	.ui-popup .ui-field-contain textarea.ui-input-text,
	.ui-popup .ui-field-contain .ui-input-search {
		width: 100%; display: block;
	}
}

.ui-popup > .ui-btn-left,
.ui-popup > .ui-btn-right {
	position: absolute; 
	top: -9px;
	margin: 0;
	z-index: 1101;
}
.ui-popup > .ui-btn-left { left: -9px; }
.ui-popup > .ui-btn-right { right: -9px; }
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-popup-screen {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1200;
}
.ui-overlay-dim {
  background: #000000;
  opacity: .5;
}
.ui-popup-scroller-bg {
  width: 100%;
}
.ui-popup-container {
  position: absolute;
  width: 86.12%;
  z-index: 1201 !important;
  text-align: center;
  outline-color: #f8f6ef;
  display: -moz-box;
  display: -webkit-box;
  display: box;
  -ms-box-orient: vertical;
  -moz-box-orient: vertical;
  -o-box-orient: vertical;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  -ms-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -webkit-box-align: center;
  box-align: center;
  -ms-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -webkit-box-pack: center;
  box-pack: center;
  outline: none;
  /***** Normal Samples *****/

}
.ui-popup-container .ui-popup {
  padding: .5px .5px .5px .5px;
  background: #f8f6ef;
  width: 100%;
  border: 1px solid #62697f;
  word-wrap: break-word;
  -ms-border-radius: .3em;
  -o-border-radius: .3em;
  -webkit-border-radius: .3em;
  -moz-border-radius: .3em;
  border-radius: .3em;
}
.ui-popup-container .ui-popup > .ui-popup-title,
.ui-popup-container .ui-popup > .ui-popup-button-bg {
  width: 100%;
}
.ui-popup-container .ui-popup-title {
  width: 100%;
  height: 1.8181818181818183rem;
  text-align: left;
  color: #252525;
  font-size: 1.0909090909090908rem;
  font-weight: bold;
  background: #dbd9ce;
  -ms-border-top-left-radius: .2em;
  -o-border-top-left-radius: .2em;
  -webkit-border-top-left-radius: .2em;
  -moz-border-top-left-radius: .2em;
  border-top-left-radius: .2em;
  -ms-border-top-right-radius: .2em;
  -o-border-top-right-radius: .2em;
  -webkit-border-top-right-radius: .2em;
  -moz-border-top-right-radius: .2em;
  border-top-right-radius: .2em;
}
.ui-popup-container .ui-popup-title h1 {
  font-size: 1.0909090909090908rem;
  font-weight: bold;
  color: #252525;
  text-shadow: 0px 2px rgba(250, 250, 250, 0.75);
  margin: 0px;
  padding-top: 0.2272727272727273rem;
  padding-left: 0.7272727272727273rem;
}
.ui-popup-container .ui-popup-text {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-left: 0.7272727272727273rem;
  padding-right: 0.7272727272727273rem;
  color: #000000;
  font-size: 0.9090909090909092rem;
  background: #f8f6ef;
  text-align: center;
}
.ui-popup-container .ui-popup-text .ui-li .ui-radio label,
.ui-popup-container .ui-popup-text .ui-li .ui-checkbox label {
  background: transparent;
}
.ui-popup-container .ui-popup-text input {
  display: inline-block;
}
.ui-popup-container .ui-popup-button-bg {
  background: #d6d3c9;
  font-size: 0.8181818181818182rem;
  font-weight: bold;
  height: 1.6818181818181819rem;
  padding-top: 0.4545454545454546rem;
  padding-bottom: 0.4545454545454546rem;
  width: 100%;
  vertical-align: middle;
  -ms-border-bottom-left-radius: .3em;
  -o-border-bottom-left-radius: .3em;
  -webkit-border-bottom-left-radius: .3em;
  -moz-border-bottom-left-radius: .3em;
  border-bottom-left-radius: .3em;
  -ms-border-bottom-right-radius: .3em;
  -o-border-bottom-right-radius: .3em;
  -webkit-border-bottom-right-radius: .3em;
  -moz-border-bottom-right-radius: .3em;
  border-bottom-right-radius: .3em;
}
.ui-popup-container .ui-popup-button-bg > .ui-btn {
  width: 40%;
  display: inline-block;
  margin: auto;
  height: 1.6818181818181819rem;
  background: #f7f5ed;
  background: -webkit-gradient(linear, left top, left bottom, from(#f7f5ed), to(#eceae2));
  background: -moz-linear-gradient(top, #f7f5ed, #eceae2);
  background: -ms-linear-gradient(top, #f7f5ed, #eceae2);
  background: -o-linear-gradient(top, #f7f5ed, #eceae2);
  color: #3a3a3a;
  border: 1px solid #85837e;
  box-shadow: 0 0 1px 1px #85837e;
}
.ui-popup-container .ui-popup-button-bg > .ui-btn.ui-btn-down-s {
  background: #007ad8;
  background: -webkit-gradient(linear, left top, left bottom, from(#0066c4), to(#007ad8));
  background: -moz-linear-gradient(top, #0066c4, #007ad8);
  background: -ms-linear-gradient(top, #0066c4, #007ad8);
  background: -o-linear-gradient(top, #0066c4, #007ad8);
  color: #fafafa;
}
.ui-popup-container .ui-popup-button-bg .ui-btn-inner {
  padding-left: 0.9090909090909092rem;
  padding-right: 0.9090909090909092rem;
  margin-top: 0.13636363636363635rem;
  -ms-border-radius: .2em;
  -o-border-radius: .2em;
  -webkit-border-radius: .2em;
  -moz-border-radius: .2em;
  border-radius: .2em;
}
.ui-popup-container .center_basic_3btn .ui-btn,
.ui-popup-container .center_title_3btn .ui-btn {
  max-width: 3.6363636363636367rem;
  height: 1.6818181818181819rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
  display: inline-block;
}
.ui-popup-container .center_button_vertical .ui-popup-button-bg {
  display: block;
  height: auto;
}
.ui-popup-container .center_button_vertical .ui-popup-button-bg > .ui-btn {
  display: block;
  width: 9.090909090909092rem;
  margin-top: 5px;
  margin-bottom: 5px;
}
.ui-popup-container .center_checkbox .ui-popup-check-bg {
  font-size: 0.9090909090909092rem;
  width: 100%;
  padding-top: 0rem;
  padding-bottom: 1rem;
  vertical-align: middle;
}
.ui-popup-container .center_checkbox .ui-popup-check-bg .ui-checkbox .ui-btn {
  text-align: center;
  border: 0rem;
}
.ui-popup-container .center_checkbox .ui-popup-check-bg .ui-checkbox .ui-btn .ui-btn-inner {
  border: 0rem;
}
.ui-popup-container .center_checkbox .ui-popup-button-bg {
  background: #d6d3c9;
}
.ui-popup-container .center_checkbox .ui-popup-button-bg .ui-btn {
  min-width: 5.454545454545455rem;
  margin-top: 0rem;
  margin-bottom: 0rem;
  margin-left: 0.2272727272727273rem;
  margin-right: 0.2272727272727273rem;
}
.ui-popup-container .center_liststyle_1btn .ui-popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  max-height: 11.636363636363637rem;
}
.ui-popup-container .center_liststyle_2btn .ui-popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  max-height: 11.636363636363637rem;
}
.ui-popup-container .center_liststyle_2btn .ui-popup-button-bg .ui-btn {
  min-width: 5.454545454545455rem;
}
.ui-popup-container .center_title_2btn .ui-popup-button-bg .ui-btn {
  min-width: 5.454545454545455rem;
}
.ui-popup-container .center_liststyle_3btn .ui-popup-scroller-bg {
  width: 100%;
  overflow: hidden;
  background: #f8f6ef;
  max-height: 11.636363636363637rem;
}
.ui-popup-container .center_liststyle_3btn .ui-popup-button-bg .ui-btn {
  max-width: 3.6363636363636367rem;
}
.ui-popup-container .center_progressbar {
  text-align: center;
}
.ui-popup-container .center_progressbar .ui-popup-text {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  height: 3.181818181818182rem;
}
.ui-popup-container .center_progressbar .ui-popup-text p {
  height: 100%;
  text-align: center;
  padding: 1rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
}
.ui-popup-container .center_progressbar .ui-popup-text-bottom-bg {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  vertical-align: middle;
}
.ui-popup-container .center_progressbar .ui-popup-text-bottom-bg .text-left {
  width: 40%;
  height: 2.1818181818181817rem;
  padding: 0rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
  text-align: left;
  display: inline-block;
}
.ui-popup-container .center_progressbar .ui-popup-text-bottom-bg .text-right {
  width: 40%;
  height: 2.1818181818181817rem;
  padding: 0rem 0.7272727272727273rem 0rem 0.7272727272727273rem;
  text-align: right;
  display: inline-block;
}
.ui-popup-container .center_progressbar .ui-popup-button-bg {
  background: #d6d3c9;
}
.ui-popup-container .center_progressbar .ui-popup-button-bg .ui-btn {
  width: 9.136363636363637rem;
  margin: auto;
}
.ui-popup-container .center_progressbar .ui-popup-progress-bg {
  background: #f8f6ef;
  width: 100%;
  height: 100%;
}
.ui-popup-container .centertext_progressbar {
  text-align: center;
}
.ui-popup-container .centertext_progressbar .ui-popup-text {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 0.7272727272727273rem;
}
.ui-popup-container .centertext_progressbar .ui-popup-text p {
  text-align: center;
}
.ui-popup-container .centertext_progressbar .ui-popup-text-bottom-bg {
  font-size: 1.1818181818181819rem;
  font-color: #999999;
  background: #f8f6ef;
  width: 100%;
  vertical-align: middle;
}
.ui-popup-container .centertext_progressbar .ui-popup-text-bottom-bg .text-left {
  width: 40%;
  height: 1.8181818181818183rem;
  padding: 0.7272727272727273rem 0.7272727272727273rem 1rem 0.7272727272727273rem;
  text-align: left;
  display: inline-block;
}
.ui-popup-container .centertext_progressbar .ui-popup-text-bottom-bg .text-right {
  width: 40%;
  height: 1.8181818181818183rem;
  padding: 0.7272727272727273rem 0.7272727272727273rem 1rem 0.7272727272727273rem;
  text-align: right;
  display: inline-block;
}
.ui-popup-container .centertext_progressbar .ui-popup-button-bg {
  background: #d6d3c9;
}
.ui-popup-container .centertext_progressbar .ui-popup-button-bg .ui-btn {
  width: 18.272727272727273rem;
  margin: auto;
}
.ui-popup-container .centertext_progressbar .ui-popup-progress-bg {
  background: #f8f6ef;
  width: 100%;
  height: 100%;
}
/*
 * Misc. classes for Tizen web ui framework
 *
 * All classes in this file has highest priority.
 */
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/* text-ellipsis
 * elements using this class needs following constraints;
 *  - width must not be 'auto'
 *  - display must be 'block' or 'inline-block'
 */
.ui-text-ellipsis {
  white-space: nowrap;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  overflow: hidden !important;
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
/***************************************************************************
                    Tabbar
***************************************************************************/
.ui-tabbar {
  z-index: 1000;
}


.ui-tabbar a.ui-btn {
  background: #edebe4;
  color: #555555;
  padding-top: 0.5454545454545454rem;
  padding-bottom: 0.5454545454545454rem;
}
.ui-tabbar a.ui-btn .ui-btn-inner {
  padding-top: 0px;
  padding-bottom: 0px;
  border-left: 1px solid;
  border-color: #8a8a8a;
  border-radius: 0px;
  -0-border-radius: 0px;
  -ms-border-radius: 0px;
  -webkit-border-radius: 0px;
}
.ui-tabbar a.ui-btn .ui-btn-inner:not(.ui-btn-icon-only) .ui-btn-text {
  display: block;
  vertical-align: middle;
  margin-left: 0.2727272727272727rem;
  margin-right: 0.2727272727272727rem;
}
.ui-tabbar a.ui-btn .ui-btn-inner .ui-btn-text {
  background: #edebe4;
}
.ui-tabbar a.ui-btn .ui-icon {
  width: 1.4545454545454546rem;
  height: 1.4545454545454546rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.ui-tabbar a.ui-btn.ui-btn-down-s {
  background: #3b73b6;
  border-bottom-color: #edebe4;
}
.ui-tabbar a.ui-btn.ui-btn-down-s .ui-btn-text {
  background: #3b73b6;
}
.ui-tabbar .ui-btn-inner {
  font-size: 0.6818181818181819rem;
  font-weight: bold;
}
.ui-tabbar .ui-btn-inner .ui-icon {
  top: 0.4545454545454546rem;
  left: 50%;
  margin-left: -0.7272727272727273rem;
}
.ui-tabbar.ui-tabbar-notext a.ui-btn {
  padding-top: 0.5rem;
  padding-bottom: 0.18181818181818182rem;
}
.ui-tabbar.ui-tabbar-notext .ui-btn-inner {
  height: 1.5454545454545454rem;
}
.ui-tabbar.ui-tabbar-notext .ui-btn-inner .ui-icon {
  top: 0px;
}
/* title font size when title tabbar */
.ui-header.ui-bar-s.ui-title-tabbar .ui-title {
  font-size: 1rem;
  margin-top: 0.36363636363636365rem;
  margin-bottom: 0rem;
}
.ui-header.ui-bar-s.ui-title-tabbar > img {
  margin-top: 0.6rem;
}
.ui-header.ui-bar-s.ui-title-tabbar .ui-tabbar.ui-tabbar-noicons a.ui-btn {
  padding-top: 0.2727272727272727rem;
  padding-bottom: 0.13636363636363635rem;
}
.ui-header.ui-bar-s.ui-title-tabbar .ui-tabbar.ui-tabbar-notext a.ui-btn {
  padding-top: 0.3181818181818182rem;
  padding-bottom: 0.2272727272727273rem;
}


.ui-header.ui-bar-s .ui-tabbar a.ui-btn {
  border-bottom-width: 0.2272727272727273rem;
  border-bottom-color: #edebe4;
  border-bottom-style: solid;
}
.ui-header.ui-bar-s .ui-tabbar a.ui-btn.ui-btn-active {
  border-bottom-color: #0e66ad;
}
.ui-header.ui-bar-s .ui-tabbar a.ui-btn.ui-btn-down-s {
  border-bottom-color: #3b73b6;
}
.ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn {
  padding-top: 0.3181818181818182rem;
  padding-bottom: 0.18181818181818182rem;
}
.ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn .ui-btn-inner {
  height: 2.2272727272727275rem;
}
.ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn .ui-btn-inner .ui-btn-text {
  padding-bottom: 0.045454545454545456rem;
}
.ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn .ui-btn-inner .ui-icon {
  top: 0px;
}
.ui-header.ui-bar-s li:first-child .ui-btn-inner {
  border-left-width: 0px;
}
.ui-footer.ui-bar-s .ui-tabbar {
  height: 2.2272727272727275rem;
  margin-left: auto;
  margin-right: auto;
}
.ui-footer.ui-bar-s .ui-tabbar a.ui-btn {
  background: #dedcd5;
  padding-top: 0.5454545454545454rem;
  padding-bottom: 0.5454545454545454rem;
}
.ui-footer.ui-bar-s .ui-tabbar a.ui-btn.ui-btn-down-s:not(.ui-btn-icon_only) {
  background: #0e66aa;
}
.ui-footer.ui-bar-s .ui-tabbar a.ui-btn.ui-btn-down-s:not(.ui-btn-icon_only) .ui-btn-text {
  background: #0e66aa;
}
.ui-footer.ui-bar-s .ui-tabbar .ui-btn-inner {
  padding-top: 0.09090909090909091rem;
  padding-bottom: 0.09090909090909091rem;
}
.ui-footer.ui-bar-s .ui-tabbar .ui-btn-inner .ui-icon {
  top: 0px;
}
.ui-footer.ui-bar-s .ui-tabbar .ui-btn-inner .ui-btn-text {
  background: #dedcd5;
}
.ui-footer.ui-bar-s .ui-tabbar.ui-tabbar-notext a.ui-btn {
  padding-top: 0.36363636363636365rem;
  padding-bottom: 0.3181818181818182rem;
}
.ui-footer.ui-bar-s .ui-tabbar li:first-child .ui-btn-inner {
  border-left-width: 0px;
}
.ui-footer.ui-bar-s .ui-tabbar.ui-tabbar-margin-back {
  margin-right: 2.5454545454545454rem;
}
.ui-footer.ui-bar-s .ui-tabbar.ui-tabbar-margin-more {
  margin-left: 2.5454545454545454rem;
}
.ui-footer.ui-bar-s .ui-btn-back ~ .ui-tabbar li:last-child .ui-btn-inner {
  border-right: 1px solid;
  border-right-color: #8a8a8a;
}
.ui-footer.ui-bar-s [data-icon="naviframe-more"] ~ .ui-tabbar li:first-child .ui-btn-inner {
  border-left: 1px solid;
  border-left-color: #8a8a8a;
}
.ui-tabbar-s.ui-navbar-noicons {
  font-size: 1rem;
}
/* Scrollable tabbar */
.ui-tabbar .tabbar-scroll-ul {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-left: 0px;
}
.ui-tabbar .tabbar-scroll-ul .tabbar-scroll-li {
  position: relative;
  display: inline-block;
  margin-left: -0.36363636363636365rem;
}
.ui-tabbar .tabbar-scroll-ul .tabbar-scroll-li a {
  width: 100%;
  padding-top: 3px;
  padding-bottom: 3px;
  border-bottom-width: 0.2272727272727273rem;
  border-bottom-style: solid;
  border-bottom-color: #edebe4;
}
.ui-tabbar .tabbar-scroll-ul .tabbar-scroll-li a.ui-tabbar-active {
  border-bottom-color: #0e66ad;
}
.ui-tabbar .tabbar-scroll-ul li.tabbar-scroll-li:first-child {
  margin-left: 0px;
}
.ui-tabbar-divider {
  position: absolute;
  top: 0px;
  width: 3.681818181818182rem;
  height: 1.6363636363636365rem;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.ui-tabbar-divider-left {
  left: 0px;
  background-image: url(images/00_effect_title_tab_bounce_left.png);
}
.ui-tabbar-divider-right {
  right: 0px;
  background-image: url(images/00_effect_title_tab_bounce_right.png);
}
/************************************************************************
			Landscape mode
************************************************************************/
@media all and (orientation: landscape) and (device-aspect-ratio: 16/9) {
  .ui-tabbar a.ui-btn {
    padding-top: 0.6363636363636364rem;
    padding-bottom: 0.2272727272727273rem;
  }
  .ui-tabbar .ui-btn-inner .ui-icon {
    top: 0.4545454545454546rem;
  }
  .ui-tabbar.ui-tabbar-notext a.ui-btn {
    padding-top: 0.2727272727272727rem;
    padding-bottom: 0.2272727272727273rem;
  }
  .ui-tabbar.ui-tabbar-notext .ui-btn-inner {
    height: 1.5454545454545454rem;
  }
  /* title font size when title tabbar */
  .ui-header.ui-bar-s.ui-title-tabbar .ui-title {
    font-size: 0.8636363636363636rem;
    margin-top: 0.36363636363636365rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar .ui-tabbar.ui-tabbar-noicons a.ui-btn {
    padding-top: 0.4545454545454546rem;
    padding-bottom: 0.36363636363636365rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar .ui-tabbar.ui-tabbar-notext a.ui-btn {
    padding-top: 0.13636363636363635rem;
    padding-bottom: 0.09090909090909091rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn {
    padding-top: 0.18181818181818182rem;
    padding-bottom: 0.045454545454545456rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn .ui-btn-inner {
    height: 2.4545454545454546rem;
  }
  .ui-header.ui-bar-s.ui-title-tabbar-multiline .ui-tabbar a.ui-btn .ui-btn-inner .ui-btn-text {
    line-height: 0.6818181818181819rem;
  }
  .ui-footer.ui-bar-s .ui-tabbar {
    height: 1.9090909090909092rem;
  }
  .ui-footer.ui-bar-s .ui-tabbar a.ui-btn {
    padding-top: 0.5909090909090909rem;
    padding-bottom: 0.5454545454545454rem;
  }
  .ui-footer.ui-bar-s .ui-tabbar.ui-tabbar-notext a.ui-btn {
    padding-top: 0.18181818181818182rem;
    padding-bottom: 0.18181818181818182rem;
  }
  .ui-tabbar-s.ui-navbar-noicons {
    font-size: 0.8636363636363636rem;
  }
  /* Scrollable tabbar */
  .ui-tabbar-divider {
    width: 3.681818181818182rem;
    height: 2.5rem;
  }
}
/****************************
 * Tizen Common Less Header *
 ****************************/
/*
 * Common definition for theme
 * 'config.less' in each theme must include this file.
 */
/******************************
  z-index order collection
 ******************************/
/******************************
  Global LESS mixin collection
 ******************************/
/***************************************************************************
                   Body
***************************************************************************/
/* B011 : Main Background color */
/* B012 : Main font color */
/***************************************************************************
                   Naviframe
***************************************************************************/
/* B042 : title text */
/* B052L4 : Title text button */
/* B052L5 : Title text button press */
/* B052L1P : Title text button press bg */
/* 00_divider_line.9.png */
/* B0515L1: Toolbar bg */
/* B052L4 : Toolbar button normal */
/* B052L4P : Toolbar button pressed */
/* B0511P : Navigation bar bg press */
/***************************************************************************
                   Tabbar
***************************************************************************/
/* B0514P1 : 00_tab_press_ef.9.png */
/* B052L6P */
/* B052L6 */
/***************************************************************************
                   List
***************************************************************************/
/* B0211 */
/* B041	*/
/* B0221 */
/* W021L1 */
/* W021L2 */
/* W021L3 */
/* B0212 */
/* F011L1 */
/* W051 */
/* W051 */
/* F011L16 */
/* F011L17 */
/* F011L15 */
/***************************************************************************
                   Fast Scroll
***************************************************************************/
/* B0724 : 00_fast_scroll_rollover_bg.9.png */
/* B0721 : Rollover text */
/* B0731 : 00_fast_scroll_popup_bg.png */
/* B0732 : Scroll popup text */
/***************************************************************************
                   SearchBar(forms.textinput)
***************************************************************************/
/* Search default text */
/* W301 : 00_search_edit_field_bg.png */
/***************************************************************************
                   Popup
***************************************************************************/
/* B061L1 : Popop info */
/***************************************************************************
                        Button(connected with other winset)
***************************************************************************/
/* F031L1 */
/* F031L1P */









/***************************************************************************
                        contextual popup
***************************************************************************/
/* B061L4 : Contextual bg */
/* B044 : Contextual effect */
/***************************************************************************
                   Scrollview
***************************************************************************/
/***************************************************************************
                   Date Time picker
***************************************************************************/
/* W0811 : Picker bg */
/* B0224 : Dialogue group List Line */
/* B0222 : Line divider */
/***************************************************************************
                   SegmentControl
***************************************************************************/
/* B052L4 : Title text button */
/***************************************************************************
                   Popup
***************************************************************************/
/* popup_title_bg.png */
/* B063L9 : Basic Style_title */
/* maybe not use only popupwindow*/



/***************************************************************************
                    Tickernoti
***************************************************************************/
/***************************************************************************
                    Smallpopup
***************************************************************************/
/***************************************************************************
                    Slider
***************************************************************************/
/***************************************************************************
                    Progress
***************************************************************************/
/***************************************************************************
                   Handler
***************************************************************************/
/***************************************************************************
                   multimediaview
***************************************************************************/



/***************************************************************************
                   tokentextarea
***************************************************************************/
/* W0711 : Contact button bg normal */
/* W0713 : Contact button bg press */
/***************************************************************************
                   Splitview
***************************************************************************/
/* W131 */
/* W132 */
.ui-splitview {
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
.ui-splitview .ui-pane {
  position: absolute;
  overflow: hidden;
  border: 0;
  margin: 0;
  padding: 0;
}
.ui-splitview .ui-pane .ui-listview {
  margin: 0;
  padding: 0;
}
.ui-splitview .ui-spliter {
  position: absolute;
  z-index: 100;
  display: block;
  margin: 0;
  padding: 0;
}
.ui-splitview .ui-spliter-bar {
  background-color: #959595;
  border-color: #808080;
  border-style: solid;
}
.ui-splitview .ui-spliter-handle {
  margin: 0;
  padding: 0;
  cursor: move;
  display: block;
  text-align: center;
  cursor: pointer;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.ui-direction-horizontal > .ui-spliter {
  width: 1.3636363636363638rem;
}
.ui-direction-vertical > .ui-spliter {
  height: 1.3636363636363638rem;
}
.ui-direction-horizontal > .ui-spliter > .ui-spliter-bar {
  width: 0.25rem;
  margin: 0 0 0 0.5681818181818182rem;
  border-width: 0 1px 0 1px;
}
.ui-direction-vertical > .ui-spliter > .ui-spliter-bar {
  height: 0.25rem;
  margin: 0.5681818181818182rem 0 0 0;
  border-width: 1px 0 1px 0;
}
.ui-spliter-active > .ui-spliter-bar {
  background-color: #5787c2;
  border-color: #5787c2;
}
.ui-direction-horizontal > .ui-spliter > .ui-spliter-bar > .ui-spliter-handle {
  width: 0.20454545454545456rem;
  height: 0.6136363636363636rem;
  margin: 0 0.022727272727272728rem 0 0.022727272727272728rem;
  background-image: url(./images/00_splite_handler_v.png);
  background-size: 0.20454545454545456rem 0.6136363636363636rem;
  background-repeat: no-repeat;
}
.ui-direction-vertical > .ui-spliter > .ui-spliter-bar > .ui-spliter-handle {
  width: 0.6136363636363636rem;
  height: 0.20454545454545456rem;
  margin: 0.022727272727272728rem 0 0.022727272727272728rem 0;
  background-image: url(./images/00_splite_handler_h.png);
  background-size: 0.6136363636363636rem 0.20454545454545456rem;
  background-repeat: no-repeat;
}
.ui-direction-horizontal > .ui-fixed {
  width: 0;
}
.ui-direction-horizontal > .ui-fixed > .ui-spliter-bar {
  width: 0.11363636363636365rem;
}
.ui-direction-vertical > .ui-fixed {
  height: 0;
}
.ui-direction-vertical > .ui-fixed > .ui-spliter-bar {
  height: 0.11363636363636365rem;
}
.ui-fixed .ui-spliter-handle {
  display: none;
}
