:root{
  --lw-theme:#0ea5e9;
  --lw-border:#e5e7eb;
  --lw-muted:#6b7280;
}
.lw-baufi{font-family:system-ui,-apple-system,Segoe UI,Montserrat,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;line-height:1.4}
.lw-baufi *{box-sizing:border-box}
.lw-baufi input, .lw-baufi select{width:100%;padding:.6rem .7rem;border:1px solid var(--lw-border);border-radius:.6rem;font-size:1rem;background:#fff}
.lw-row{margin-bottom:.9rem}
.lw-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:.9rem}
@media (max-width: 640px){.lw-grid-2{grid-template-columns:1fr}}
.lw-fieldset{border:1px solid var(--lw-border);border-radius:.8rem;padding:.7rem;margin:.8rem 0}
.lw-fieldset legend{font-weight:700;padding:0 .4rem}
.lw-actions{display:flex;gap:.5rem;margin:.6rem 0 1rem}
.lw-btn{background:var(--lw-theme);color:#fff;border:none;padding:.6rem .9rem;border-radius:.7rem;cursor:pointer;font-weight:600}
.lw-btn--ghost{background:transparent;color:#111;border:1px solid var(--lw-border)}
.lw-baufi__result{margin-top:1rem}
/* H2 Heading */
.lw-h2{margin:0 0 .3rem 0;font-size:1.25rem}
.lw-intro{margin:0 0 .9rem 0;color:var(--lw-muted)}
/* Cards */
.lw-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:.8rem 0}
@media (max-width:960px){.lw-cards{grid-template-columns:1fr}}
.lw-card{border:1px solid var(--lw-border);border-radius:1rem;padding:.9rem}
.lw-card__title{font-size:.9rem;color:var(--lw-muted)}
.lw-card__value{font-size:1.3rem;font-weight:700;margin-top:.2rem}
.lw-card__note{font-size:.85rem;color:var(--lw-muted)}
/* Chart */
.lw-chart-wrap{border:1px solid var(--lw-border);border-radius:.8rem;padding:.5rem}
/* Table */
.lw-table-wrap{overflow:auto;border:1px solid var(--lw-border);border-radius:.8rem;margin-top:1rem;width:100%}
.lw-table{width:100%;border-collapse:collapse;table-layout:fixed}
.lw-table th,.lw-table td{padding:.5rem .6rem;border-bottom:1px solid var(--lw-border);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lw-table th:first-child,.lw-table td:first-child{text-align:left}
.lw-export{display:flex;justify-content:flex-end;margin:.6rem 0}
.lw-note{font-size:.85rem;color:var(--lw-muted);margin-top:.5rem}
.lw-print{display:none}
