/* Shared visual language. See docs/design-system.md for usage rules. */
:root{
 --ui-ink:#24353c;--ui-muted:#52636d;--ui-accent:#315c70;--ui-line:#d5dfe4;
 --ui-surface:#fff;--ui-soft:#f1f5f7;--ui-warning:#765527;--ui-warning-line:#d6c29f;--ui-warning-soft:#faf7f0;
 --ui-radius:6px;--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-6:24px;--ui-space-8:32px;
 --ui-icon-info:url('./assets/icons/info.svg');--ui-icon-alert:url('./assets/icons/alert.svg');--ui-icon-list:url('./assets/icons/list.svg');--ui-icon-document:url('./assets/icons/document.svg');--ui-icon-calculator:url('./assets/icons/calculator.svg');
}
/* Icons are monochrome 24-unit line drawings, never the only label. */
.ui-icon.ui-icon{display:inline-block;width:18px;height:18px;min-width:18px;margin-inline-start:5px;vertical-align:-.2em;background:currentColor;-webkit-mask:var(--ui-icon) center/contain no-repeat;mask:var(--ui-icon) center/contain no-repeat;font-size:18px;line-height:1;flex-shrink:0;font-style:normal}
.ui-icon-arrow-right{--ui-icon:url('./assets/icons/arrow-right.svg')}.ui-icon-external{--ui-icon:url('./assets/icons/external.svg')}.ui-icon-download{--ui-icon:url('./assets/icons/download.svg')}
/* Notes: blue = explanation; amber = a limitation requiring attention. */
.ui-callout,.article-body .formula-note,.article-body .source-box{padding:var(--ui-space-6);border:1px solid var(--ui-line);border-radius:var(--ui-radius);box-shadow:none}
.ui-callout-info{background:var(--ui-soft);border-left:3px solid var(--ui-accent)}
.article-body .ui-callout-warning{background:var(--ui-warning-soft);border-color:var(--ui-warning-line);border-left:3px solid var(--ui-warning)}
.ui-callout>:is(strong,h3):first-child::before,.source-box>h3:first-child::before,.formula-note>:is(strong,h3):first-child::before,.verdict>strong:first-child::before,.reservation-summary-heading>h2::before{
 content:"";display:inline-block;width:20px;height:20px;margin-inline-end:9px;vertical-align:-.21em;background:var(--ui-accent);-webkit-mask:var(--ui-mark) center/contain no-repeat;mask:var(--ui-mark) center/contain no-repeat
}
.ui-callout-info{--ui-mark:var(--ui-icon-info)}.article-body .ui-callout-warning{--ui-mark:var(--ui-icon-alert)}.ui-callout-warning>:is(strong,h3):first-child::before{background:var(--ui-warning)}
.source-box{--ui-mark:var(--ui-icon-document);background:var(--ui-surface)}
.formula-note{--ui-mark:var(--ui-icon-calculator);background:var(--ui-soft)}
.verdict,.reservation-summary-heading{--ui-mark:var(--ui-icon-list)}
.article-body .formula-note.ui-callout-warning{--ui-mark:var(--ui-icon-alert)}
.ui-callout>:is(strong,h3):first-child{letter-spacing:0;font-size:16px;line-height:1.85;color:var(--ui-ink)}
.ui-callout p,.ui-callout li{font-size:15px;line-height:1.95;color:var(--ui-muted)}
.article-body .formula-note p{font-size:17px;line-height:1.9}.article-body .source-box h3{font-size:19px;line-height:1.8}
/* Common geometry; existing card layouts, photography and content order stay intact. */
:is(.check-card,.fit-card,.scenario-card,.service-card,.pos-type-card,.pos-operation-card,.free-pos-result,.plan-card,.pro-guide-card,.knowledge-card,.verification-levels,.pos-worked-example){border-radius:var(--ui-radius);box-shadow:none;border-color:var(--ui-line)}
:is(.check-card,.fit-card,.scenario-card,.service-card,.pos-type-card,.pos-operation-card,.free-pos-result){padding:var(--ui-space-6)}
.fit-card,.fit-card:nth-child(2),.fit-card:nth-child(3){border-top:1px solid var(--ui-line)}
:is(.decision-table-wrap,.service-table-wrap,.comparison-table-wrap,.quick-table-wrap){border-color:var(--ui-line);border-radius:var(--ui-radius);box-shadow:none}
:is(.service-table,.decision-table,.comparison-table,.quick-table) thead th{background:var(--ui-soft);color:var(--ui-ink)}
.choice-reason{color:var(--ui-ink)}.choice-caution{color:var(--ui-muted);border-left-color:var(--ui-warning-line)}
.free-pos-status{border-radius:4px}.free-pos-status.level-paid,.free-pos-status.level-check{color:var(--ui-warning);background:var(--ui-warning-soft);border-color:var(--ui-warning-line)}
/* Filled = a main action; outline = a secondary action; underlined = reading/navigation. */
.primary-action,.official-link,.editor-note .ops-ad a{background:var(--ui-ink);color:#fff!important;border:1px solid var(--ui-ink);border-radius:var(--ui-radius);min-height:48px;padding:12px 18px;line-height:1.8;box-shadow:none}
.primary-action:hover,.official-link:hover,.editor-note .ops-ad a:hover{background:var(--ui-accent);border-color:var(--ui-accent);transform:none;box-shadow:none}
.secondary-action,.pos-try-link,.ops-reset,.print-results{background:var(--ui-surface);color:var(--ui-accent);border:1px solid #8ba1ad;border-radius:var(--ui-radius);min-height:48px;padding:11px 18px;line-height:1.8;box-shadow:none}
.secondary-action:hover,.pos-try-link:hover,.ops-reset:hover,.print-results:hover{background:var(--ui-soft);border-color:var(--ui-accent);transform:none}
.source-links a{border-radius:var(--ui-radius);padding:10px 14px;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-accent);line-height:1.8}
.source-links a:hover{border-color:var(--ui-accent)}
:is(.decision-anchor,.reservation-summary-footer a,.scenario-card a,.free-pos-result a){color:var(--ui-accent);text-underline-offset:4px;text-decoration-thickness:1px}
:is(.official-link,.primary-action,.secondary-action,.pos-try-link,.source-links a,.ops-reset,.print-results):focus-visible{outline:3px solid var(--ui-accent);outline-offset:4px}
/* Avoid decoration leaking into ad disclosures or repeatedly marking every heading. */
.ops-ad{border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface)}
@media(max-width:760px){
 .ui-callout,.article-body .formula-note,.article-body .source-box{padding:20px}
 :is(.check-card,.fit-card,.scenario-card,.service-card,.pos-type-card,.pos-operation-card,.free-pos-result){padding:20px}
 .ui-callout>:is(strong,h3):first-child{font-size:15px}.ui-callout p,.ui-callout li{font-size:14px}
 .reservation-summary-heading>h2::before{width:19px;height:19px}
 .source-links a{white-space:normal;min-width:0}.ui-icon.ui-icon{width:17px;height:17px;min-width:17px}
}
@media(prefers-reduced-motion:reduce){.primary-action,.secondary-action,.official-link,.pos-try-link{transition:none}}
@media print{.ui-icon.ui-icon{display:none}.ui-callout{background:#fff!important;box-shadow:none}}

/* Ordinary feature lists use quiet bullets, not verification checkmarks. */
.finder-result li:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--ui-accent);vertical-align:.22em;margin-right:10px}
.verdict>strong:first-child::before{display:block;margin:0 0 10px}
@media(max-width:760px){.verdict>strong:first-child::before{display:inline-block;margin:0 8px 0 0;vertical-align:-.25em}}
