/* free-video-chat.live */
body { margin: 0; background: #e9e9e9; color: #222; font-family: Arial, Helvetica, sans-serif; font-size: 14px; line-height: 1.5; }
a { color: #0645ad; text-decoration: underline; }
a:visited { color: #0b0080; }
a:hover { color: #c00; }
.pageBlock { display: flow-root; width: 980px; max-width: 100%; margin: 0 auto; padding: 0 16px; box-sizing: border-box; background: #fff; border-left: 1px solid #c4c4c4; border-right: 1px solid #c4c4c4; }
.pageBlock.first { padding-top: 10px; }
.pageBlock.last { padding-bottom: 14px; border-bottom: 1px solid #c4c4c4; margin-bottom: 20px; }

#topBar { position: sticky; top: 0; z-index: 20; background: #1f3a5f; border-bottom: 2px solid #0f2340; }
#topBar .barInner { width: 980px; max-width: 100%; margin: 0 auto; padding: 6px 16px; box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 2px 14px; }
#topBar .siteName { color: #fff; font-size: 18px; font-weight: bold; text-decoration: none; }
#topBar .siteName span { color: #ffd84d; }
#topBar .barLinks a { color: #dbe6f5; font-size: 13px; margin-left: 10px; white-space: nowrap; }
#topBar .barLinks a:first-child { margin-left: 0; }

.langLine { margin: 0 0 8px; padding: 4px 0; border-bottom: 1px dotted #aaa; font-size: 12px; color: #555; }
.langLine a, .langLine b { white-space: nowrap; }
.limitLine { display: none; margin: 0 0 8px; padding: 4px 8px; background: #fff8d6; border: 1px solid #e0c96b; font-size: 12px; }
html[data-fvc-zone="strict"] .limitLine { display: block; }

h1 { margin: 4px 0 6px; font-size: 22px; line-height: 1.25; color: #1f3a5f; }
h2 { margin: 22px 0 8px; padding-bottom: 2px; font-size: 17px; color: #1f3a5f; border-bottom: 1px solid #9aa9bd; }
p { margin: 0 0 10px; }
.label { margin: 0; font-size: 11px; font-weight: bold; color: #a00; text-transform: uppercase; }
.sub { color: #444; }

table.costs { width: 100%; margin: 4px 0 10px; border-collapse: collapse; }
table.costs th, table.costs td { padding: 5px 8px; border: 1px solid #a9a9a9; vertical-align: top; text-align: left; }
table.costs th { font-size: 13px; }
table.costs th.free { background: #e2efe2; }
table.costs th.paid { background: #f4e4e4; }
table.costs caption { padding: 0 0 3px; text-align: left; font-weight: bold; }

#ageCard { display: block; }
html.fvcOk #ageCard { display: none; }
.cardBox { margin: 4px 0 12px; padding: 10px 12px; background: #f0f0f0; border: 1px solid #b5b5b5; }
.cardBox .big { display: inline-block; margin-right: 6px; padding: 0 5px; background: #a00; color: #fff; font-weight: bold; }
.cardBox .q { font-size: 16px; font-weight: bold; }
.cardBox button { margin: 4px 10px 4px 0; padding: 4px 12px; font: bold 14px Arial, sans-serif; background: #e4e4e4; border: 1px solid #888; border-radius: 2px; cursor: pointer; }
.cardBox .fine { margin: 4px 0 0; font-size: 11px; color: #666; }
#ageCard.ask .cardBox { border: 2px solid #a00; }

#startArea { display: none; }
html.fvcOk #startArea { display: block; }
.startRow { margin: 6px 0 10px; padding: 8px 10px; background: #f0f0f0; border: 1px solid #b5b5b5; }
a.goBtn { display: inline-block; padding: 5px 16px; background: #2d6a2d; border: 1px solid #1d4a1d; border-radius: 2px; color: #fff; font-size: 15px; font-weight: bold; text-decoration: none; }
a.goBtn:visited { color: #fff; }
a.goBtn:hover { background: #3a7f3a; color: #fff; }
.small { font-size: 12px; color: #555; }
.startRow .small { margin-left: 8px; }

.margin { padding: 6px 10px; background: #fafafa; border-left: 3px solid #9aa9bd; font-size: 13px; font-style: italic; }
table.ledger { width: 100%; border-collapse: collapse; margin: 4px 0 10px; }
table.ledger th, table.ledger td { width: 50%; padding: 5px 8px; border: 1px solid #a9a9a9; vertical-align: top; text-align: left; }
table.ledger th { background: #e6e6e6; }
table.ledger ul { margin: 0; padding-left: 18px; }
ol.habits li, ul.plain li { margin-bottom: 5px; }
.warnBox { padding: 6px 10px; background: #fbeaea; border: 1px solid #d9a3a3; }
dl.qa dt { margin-top: 10px; font-weight: bold; }
dl.qa dd { margin: 2px 0 0 18px; }
.checked { font-size: 12px; color: #666; font-style: italic; }

#footer { padding-top: 10px; border-top: 2px solid #1f3a5f; font-size: 12px; color: #444; }
#footer h3 { margin: 6px 0 2px; font-size: 12px; color: #1f3a5f; }
#footer a { white-space: nowrap; }

.doc h1 { margin-top: 10px; }
form.noteForm label { display: block; margin-top: 10px; font-weight: bold; }
form.noteForm input, form.noteForm select, form.noteForm textarea { width: 100%; max-width: 440px; box-sizing: border-box; padding: 3px; font: 14px Arial, sans-serif; }
form.noteForm button { margin-top: 10px; padding: 4px 14px; font: bold 14px Arial, sans-serif; background: #e4e4e4; border: 1px solid #888; cursor: pointer; }
.trapField { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.skipLink { position: absolute; left: -9999px; }
.skipLink:focus { left: 6px; top: 50px; z-index: 30; background: #fff; padding: 3px; }

@media (max-width: 700px) {
  body { background: #fff; font-size: 15px; }
  .pageBlock { border: 0; padding: 0 12px; }
  .pageBlock.last { border: 0; }
  #topBar .barInner { padding: 5px 12px; }
  #topBar .barLinks a { font-size: 12px; }
  h1 { font-size: 20px; }
  table.costs th, table.costs td { padding: 4px 6px; }
  table.ledger, table.ledger tbody, table.ledger tr, table.ledger th, table.ledger td { display: block; width: auto; }
  .startRow .small { display: block; margin: 4px 0 0; }
}
/* 18+ slip at the pressed Start button (before the age card is answered) */
#ageSlip { position: absolute; z-index: 20; width: 300px; max-width: calc(100vw - 20px); box-sizing: border-box; padding: 8px 11px 10px; background: #fffbe0; border: 1px solid #b5b5b5; border-left: 4px solid #a00; box-shadow: 2px 2px 0 #c8c8c8; }
#ageSlip[hidden] { display: none; }
#ageSlip .slipQ { margin: 0 0 4px; font-size: 15px; font-weight: bold; }
#ageSlip .big { display: inline-block; margin-right: 6px; padding: 0 5px; background: #a00; color: #fff; }
#ageSlip .slipSay { margin: 0 0 8px; font-size: 13px; color: #444; }
#ageSlip button { display: block; margin: 0 0 7px; padding: 5px 14px; font: bold 14px Arial, sans-serif; color: #fff; background: #2d6a2d; border: 1px solid #1d4a1d; border-radius: 2px; cursor: pointer; }
#ageSlip button:hover { background: #3a7f3a; }
#ageSlip button:focus-visible { outline: 2px solid #a00; outline-offset: 2px; }
#ageSlip a { font-size: 13px; }
