.lc-field { display: grid; gap: var(--lc-space-2); min-width: 0; }
.lc-label { font-weight: var(--lc-font-weight-semibold); font-size: var(--lc-font-size-sm); }
.lc-control, .lc-select { width: 100%; min-height: var(--lc-touch-target); padding: .65rem .75rem; color: var(--lc-color-text); background: var(--lc-color-surface); border: var(--lc-border-width) solid var(--lc-color-border); border-radius: var(--lc-radius-md); }
.lc-control:hover, .lc-select:hover { border-color: var(--lc-color-text-muted); }
.lc-control:disabled, .lc-select:disabled { cursor: not-allowed; opacity: .62; background: var(--lc-color-surface-muted); }
.lc-control[readonly] { background: var(--lc-color-surface-muted); }
.lc-field[aria-invalid="true"] .lc-control, .lc-control[aria-invalid="true"], .lc-select[aria-invalid="true"] { border-color: var(--lc-color-danger); box-shadow: 0 0 0 1px var(--lc-color-danger); }
.lc-field-hint { color: var(--lc-color-text-muted); font-size: var(--lc-font-size-sm); }
.lc-field-error { color: var(--lc-color-danger); font-size: var(--lc-font-size-sm); font-weight: var(--lc-font-weight-medium); }
.lc-field-error:empty { display: none; }
.lc-field-error::before { content: "Error: "; font-weight: var(--lc-font-weight-bold); }
.lc-input-group { display: flex; min-width: 0; }
.lc-input-group .lc-control { min-width: 0; border-radius: var(--lc-radius-md) 0 0 var(--lc-radius-md); }
.lc-input-addon { display: inline-flex; align-items: center; justify-content: center; min-height: var(--lc-touch-target); padding-inline: var(--lc-space-3); border: var(--lc-border-width) solid var(--lc-color-border); border-left: 0; border-radius: 0 var(--lc-radius-md) var(--lc-radius-md) 0; background: var(--lc-color-surface-muted); color: var(--lc-color-text-muted); white-space: nowrap; }
.lc-btn { min-height: var(--lc-touch-target); min-width: var(--lc-touch-target); border: var(--lc-border-width) solid transparent; border-radius: var(--lc-radius-md); padding: .6rem 1rem; font-weight: var(--lc-font-weight-semibold); cursor: pointer; transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
.lc-btn:disabled { cursor: not-allowed; opacity: .55; }
.lc-btn-primary { color: var(--lc-color-primary-contrast); background: var(--lc-color-primary); }
.lc-btn-primary:hover:not(:disabled) { background: var(--lc-color-primary-hover); }
.lc-btn-secondary { color: var(--lc-color-text); background: var(--lc-color-surface-muted); border-color: var(--lc-color-border); }
.lc-btn-ghost { color: var(--lc-color-primary); background: transparent; border-color: var(--lc-color-border); }
.lc-result-card { min-width: 0; padding: var(--lc-space-5); border: var(--lc-border-width) solid var(--lc-color-border); border-radius: var(--lc-radius-lg); background: var(--lc-color-surface-muted); }
.lc-result-card[data-state="error"] { border-color: var(--lc-color-danger); }
.lc-result-label { color: var(--lc-color-text-muted); font-size: var(--lc-font-size-sm); font-weight: var(--lc-font-weight-medium); }
.lc-result-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--lc-space-2); margin-block: var(--lc-space-2); min-width: 0; }
.lc-result-value, [data-result-value] { max-width: 100%; font-size: clamp(1.6rem, 6vw, 2.35rem); line-height: var(--lc-line-height-tight); font-weight: var(--lc-font-weight-bold); overflow-wrap: anywhere; word-break: break-word; }
.lc-result-unit { color: var(--lc-color-text-muted); font-size: var(--lc-font-size-lg); }
.lc-result-meta { margin: 0; color: var(--lc-color-text-muted); }
.lc-result-actions { display: flex; flex-wrap: wrap; gap: var(--lc-space-2); margin-top: var(--lc-space-4); }
.lc-result-row { display: grid; gap: var(--lc-space-1); padding-block: var(--lc-space-3); border-top: var(--lc-border-width) solid var(--lc-color-border); }
.lc-status { min-height: 1.5em; margin-top: var(--lc-space-3); font-size: var(--lc-font-size-sm); color: var(--lc-color-text-muted); }
@media (max-width: 22.5rem) { .lc-actions > .lc-btn { flex: 1 1 100%; } }
@media (prefers-reduced-motion: reduce) { .lc-scope *, .lc-scope *::before, .lc-scope *::after { scroll-behavior: auto !important; transition-duration: .001ms !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; } }

/* Phase 11: advertising integration boundary. Dormant slots take no space until real production config activates them. */
.lc-ad-zone[hidden]{display:none!important}
.lc-ad-zone{width:100%;max-width:100%;overflow:hidden;contain:layout paint;box-sizing:border-box}
.lc-ad-zone[data-ad-active="true"]{min-height:100px;margin-block:var(--lc-space-6,1.5rem)}
@media (min-width:48rem){.lc-ad-zone[data-ad-active="true"]{min-height:90px}}
