.core-cos-note,.core-registration-reference { margin:12px 0; font-size:13px; line-height:1.7; color:var(--muted-foreground); overflow-wrap:anywhere; }
.core-cos-note strong,.core-registration-reference strong { color:var(--foreground); font-variant-numeric:tabular-nums; }
.core-recipe-card .core-cos-source-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:12px 0; }
.core-cos-source-grid>div { min-width:0; }
.core-cos-source-grid dt { font-size:13px; color:var(--muted-foreground); }
.core-cos-source-grid dd { margin:4px 0 0; font-size:18px; font-weight:600; overflow-wrap:anywhere; }
.core-cos-source-table { border-collapse:collapse; width:100%; font-size:13px; }
.core-cos-source-table :is(th,td) { padding:8px; border-bottom:1px solid var(--border); text-align:left; }
.core-cos-source-table td { text-align:right; font-variant-numeric:tabular-nums; }
@media(max-width:700px){.core-recipe-card .core-cos-source-grid{grid-template-columns:1fr}}
.core-composition { margin:20px 0; padding:16px; border:1px solid var(--border); border-radius:8px; background:var(--background); }
.core-composition h4,.core-base-heading,.core-component-group h4 { margin:0 0 12px; font-size:15px; font-weight:600; color:var(--foreground); }
.core-composition-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.core-auto-field { min-width:0; font-size:13px; color:var(--muted-foreground); }
.core-auto-field p { margin:6px 0 0; min-height:40px; display:flex; align-items:center; padding:8px 10px; border:1px solid var(--border); border-radius:6px; background:var(--card); color:var(--foreground); overflow-wrap:anywhere; }
.core-composition-fields label,.core-composition-fields select { min-width:0; width:100%; }
.core-composition .field-help { margin:12px 0 0; }
.core-composition-total { display:grid; gap:16px; margin:16px 0 0; padding:16px; border:1px solid var(--border); background:var(--card); border-radius:6px; }
.core-composition-total span,.core-composition-total small { display:block; font-size:12px; color:var(--muted-foreground); }
.core-composition-total strong { display:block; margin:4px 0; font-size:24px; color:var(--foreground); }
.core-composition-breakdown { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; border-top:1px solid var(--border); padding-top:12px; }
.core-composition-breakdown b { display:block; margin-top:4px; font-size:13px; color:var(--foreground); font-weight:500; }
.core-composition-warning { margin:12px 0 0; color:var(--color-caution); font-size:13px; line-height:1.7; overflow-wrap:anywhere; }
.core-component-group { margin:24px 0 0; padding-top:20px; border-top:1px solid var(--border); }
.core-component-group>header { display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; align-items:start; padding-bottom:12px; border:0; }
.core-component-group h4 { margin-bottom:4px; }
.core-component-group small,.core-component-table small { display:block; font-size:12px; color:var(--muted-foreground); }
.core-component-table { width:100%; table-layout:fixed; border-collapse:collapse; margin-top:12px; }
.core-component-table :is(th,td) { padding:10px 8px; white-space:normal; overflow-wrap:anywhere; border-bottom:1px solid var(--border); font-size:13px; vertical-align:top; }
.core-component-table th { text-align:left; font-weight:500; }
.warehouse-overview,.warehouse-table { max-height:none; overflow:visible; background:var(--card); }
.warehouse-row { content-visibility:auto; contain-intrinsic-size:auto 65px; font-family:var(--font-sans); font-size:13px; }
.warehouse-row span strong,.warehouse-row span small { white-space:normal; overflow:visible; overflow-wrap:anywhere; }
@media(min-width:1700px){.core-composition-fields{grid-template-columns:repeat(2,minmax(0,1fr)) 120px}}
@media(max-width:1180px){.core-composition-fields{grid-template-columns:1fr}.core-composition-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .core-component-table,.core-component-table tbody,.core-component-table tr,.core-component-table td{display:block;width:100%}
 .core-component-table colgroup,.core-component-table thead{display:none}
 .core-component-table td{padding:4px 0;text-align:left}
 .core-component-table td::before{content:attr(data-label);display:block;font-size:12px;color:var(--muted-foreground)}
 .core-component-table tr{border-bottom:1px solid var(--border);padding:12px 0}
 .core-component-table td{border:0}.core-composition{padding:12px}.warehouse-row{contain-intrinsic-size:auto 220px}
}
