/* Work permit points calculator: only what site.css and the interior theme lack.
   The form reuses .calc, .calc-head, .calc-year, .calc-check and the result classes. */
.calc.wpp .calc-head{align-items:flex-start}
.calc.wpp .wpp-field{display:flex;flex:1 1 210px;flex-direction:column;gap:6px;min-width:0}
.calc.wpp .wpp-field-wide{flex-basis:300px}
.calc.wpp .wpp-field[hidden]{display:none}
.calc.wpp .wpp-row-hint{flex:1 1 100%}
.calc.wpp .wpp-field input,.calc.wpp .wpp-field select{width:100%;max-width:100%;box-sizing:border-box}
.calc.wpp .wpp-field select{text-overflow:ellipsis}
.calc.wpp .wpp-hint{color:#4b607c;margin:0;font-size:12.5px;line-height:1.5}
.calc.wpp .wpp-boundary{color:#774000;background:#fff3dd;border-left:2px solid #bd741f;margin:0;padding:6px 9px;font-size:12.5px;line-height:1.5}
.calc.wpp .wpp-error{color:#9b1c13;margin:0;font-size:13px;font-weight:700;line-height:1.5}
.calc.wpp .wpp-error::before{content:"! ";font-weight:800}
/* The interior theme sets every article paragraph to 16px (specificity 0,3,1 and 0,3,2, loaded after
   this file); these selectors outrank it so hints, notes, errors, citations and the total keep their size. */
.site-magazine-page .article-body .calc.wpp p.wpp-hint{color:#4b607c;font-size:12.5px;line-height:1.5}
.site-magazine-page .article-body .calc.wpp p.wpp-boundary{color:#774000;font-size:12.5px;line-height:1.5}
.site-magazine-page .article-body .calc.wpp p.wpp-error{color:#9b1c13;font-size:13px;line-height:1.5}
.site-magazine-page .article-body .calc.wpp p.calc-big{font:400 40px/1 Georgia,'Times New Roman',serif;letter-spacing:-.03em;margin:0 0 8px}
.calc.wpp noscript .calc-note{margin:0 0 16px}
.calc.wpp [hidden]{display:none}
.calc.wpp input[aria-invalid="true"],.calc.wpp select[aria-invalid="true"]{border-color:#b3261e;outline:2px solid #b3261e33;outline-offset:0}
.calc.wpp .wpp-fieldset{flex:1 1 100%;min-width:0;border:0;margin:0;padding:0}
.calc.wpp .wpp-fieldset legend{color:#071b38a6;letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;padding:0;font-size:9.5px;font-weight:800}
.calc.wpp .wpp-fieldset .calc-check{color:#0c1539;letter-spacing:0;text-transform:none;align-items:flex-start;margin:0 0 9px;font-size:14px;font-weight:400;line-height:1.45}
.calc.wpp .wpp-fieldset .calc-check input{flex:none;margin-top:3px}
.calc.wpp .calc-table th em{display:inline}
.calc.wpp .wpp-points td{white-space:nowrap}
.article-body .wpp-cite{color:#4b607c;font-size:13.5px;line-height:1.6}
.site-magazine-page .article .article-body p.wpp-cite{color:#4b607c;font-size:13.5px;line-height:1.6}
.article-body .wpp-open li strong{color:#0c1539}
.article-body .wpp-table-wrap{overflow-x:auto;margin:6px 0 18px;border:1px solid #d6e1ee;border-radius:6px;background:#fff}
.article-body .wpp-table-wrap:focus-visible{outline:2px solid #0064d0;outline-offset:2px}
.article-body .wpp-ref{border-collapse:collapse;width:100%;min-width:320px;font-size:14px;line-height:1.45}
.article-body .wpp-ref caption{color:#4b607c;text-align:left;padding:10px 12px 4px;font-size:12.5px}
.article-body .wpp-ref th,.article-body .wpp-ref td{text-align:left;vertical-align:top;border-bottom:1px solid #e4ebf3;padding:8px 12px;color:#0c1539}
.article-body .wpp-ref thead th{color:#4b607c;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}
.article-body .wpp-ref td:last-child,.article-body .wpp-ref thead th:last-child{text-align:right;white-space:nowrap}
.article-body .wpp-ref .wpp-ref-factor th{background:#f5f8fc;font-weight:700}
.article-body .wpp-ref .wpp-ref-factor span{color:#4b607c;font-weight:400;margin-left:6px}
.article-body .wpp-ref td[lang="zh"]{color:#4b607c;font-size:13px}
.article-body .wpp-sources li{overflow-wrap:anywhere}
.article-body .wpp-sources .wpp-src-zh,.article-body .wpp-sources .wpp-src-meta{display:block;color:#4b607c;font-size:13.5px;line-height:1.5}
@media (max-width:560px){
  .calc.wpp .wpp-field,.calc.wpp .wpp-field-wide{flex-basis:100%}
  .site-magazine-page .article-body .calc.wpp p.calc-big{font-size:32px}
  .article-body .wpp-ref th,.article-body .wpp-ref td{padding:7px 9px}
}
