.nilc-toolbar { display:flex; gap:12px; flex-wrap:wrap; align-items:end; margin-bottom:16px; }
.nilc-toolbar label { display:flex; flex-direction:column; gap:6px; font-size:13px; flex:1 1 160px; min-width:0; }
.nilc-toolbar label.nilc-wide { flex:3 1 280px; }
.nilc-toolbar select,.nilc-toolbar input { width:100%; min-width:0; }
.nilc-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:16px; align-items:start; }
.nilc-tree { max-height:72vh; overflow:auto; padding:12px; }
.nilc-tree button { display:block; border:0; text-align:left; padding:8px; background:transparent; width:100%; font:inherit; font-size:12px; cursor:pointer; border-radius:6px; color:inherit; }
.nilc-tree button:hover,.nilc-tree button[aria-pressed=true] { background:#e8f0ff; color:#174e95; }
.nilc-tree summary { cursor:pointer; font-size:12px; padding:6px 0; }
.nilc-tree details { margin:4px 0; }
.nilc-tree details details { margin-left:10px; }
.nilc-table-scroll { overflow:auto; max-width:100%; }
.nilc-table { width:100%; min-width:850px; border-collapse:collapse; font-size:12px; }
.nilc-table th,.nilc-table td { padding:10px 8px; border-bottom:1px solid #e6e9ef; text-align:left; vertical-align:top; }
.nilc-table th { background:#f4f6fa; font-weight:600; }
.nilc-table td.nilc-price { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.nilc-table .nilc-name { min-width:230px; max-width:460px; }
.nilc-table .nilc-standard { min-width:150px; max-width:260px; overflow-wrap:anywhere; }
.nilc-table .nilc-group-row th { color:#174e95; background:#edf3fb; font-size:12px; }
.nilc-code { color:#174e95; background:none; border:0; padding:0; font:inherit; cursor:pointer; text-decoration:underline; white-space:nowrap; }
.nilc-note { padding:12px 14px; background:#f5f7fb; border-radius:8px; font-size:13px; margin:12px 0; white-space:pre-line; overflow-wrap:anywhere; }
.nilc-summary { display:flex; flex-wrap:wrap; gap:8px 20px; margin:12px 0; color:#5a6475; font-size:13px; }
.nilc-pager { display:flex; gap:12px; align-items:center; justify-content:flex-end; padding:12px 0; flex-wrap:wrap; }
.nilc-tabs { display:flex; gap:8px; margin-bottom:16px; }
.nilc-tabs .active { background:#174e95; color:white; }
.nilc-positive { color:#9c3b24; }
.nilc-negative { color:#217047; }
.nilc-subtle { display:block; color:#657184; font-size:11px; margin-top:4px; }
.nilc-confirm { display:flex; align-items:start; gap:8px; margin:16px 0; }
.nilc-confirm input { width:auto; margin-top:3px; }
.nilc-check { display:inline-flex; align-items:center; gap:8px; }
.nilc-check input { width:auto; margin:0; }
.nilc-preview { max-height:48vh; overflow:auto; }
@media(max-width:1000px) { .nilc-layout { grid-template-columns:1fr; } .nilc-tree { max-height:240px; } }
@media(max-width:600px) { .nilc-toolbar { gap:10px; } .nilc-toolbar label { flex-basis:100%; } .nilc-summary { gap:8px; } }
