.builder{display:grid;gap:1.5rem}.builder-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem}.builder-heading h1{margin-bottom:.65rem}.local-note{display:grid;flex:0 0 17rem;gap:.15rem;padding:.9rem 1rem;border:1px solid var(--color-success-line);border-radius:var(--radius-md);color:var(--color-success-dark);background:var(--color-success-soft)}.local-note span{font-size:.85rem}.builder-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.5rem;padding:.5rem;border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface)}.check-result{margin-top:1.25rem}.check-result:empty{display:none}.builder-steps a{display:flex;align-items:center;gap:.55rem;min-height:2.75rem;padding:.45rem .7rem;border-radius:var(--radius-sm);color:var(--color-ink);font-size:.9rem;font-weight:650;text-decoration:none}.builder-steps a:hover{background:var(--color-paper)}.builder-steps span{display:inline-grid;width:1.75rem;height:1.75rem;place-items:center;border-radius:50%;color:var(--color-brand-dark);background:var(--color-brand-soft)}.builder-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.save-status{margin-left:auto;color:var(--color-ink-soft);font-size:.9rem}.builder-panel{scroll-margin-top:6rem;padding:clamp(1.1rem,3vw,1.75rem);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);box-shadow:var(--shadow-sm)}.builder-panel h2{margin-top:0}.builder-panel h2:after{display:none}.section-heading.compact{align-items:start;margin-bottom:1.25rem}.section-heading.compact p:not(.step-label){margin:.35rem 0 0;color:var(--color-ink-soft)}.step-label{margin:0 0 .2rem;color:var(--color-brand-dark);font-size:.75rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.status-chip,.weight-chip{flex:0 0 auto;padding:.3rem .65rem;border-radius:999px;color:var(--color-ink-soft);background:var(--color-surface-strong);font-size:.82rem;font-weight:700}.weight-chip.valid{color:var(--color-success-dark);background:var(--color-success-soft)}.weight-chip.invalid{color:var(--color-danger-dark);background:var(--color-danger-soft)}.form-grid{display:grid;gap:1rem}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label,.hierarchy-fields label,.criterion-fields label,.offer-card label{display:grid;align-content:start;gap:.35rem;color:var(--color-ink);font-size:.9rem;font-weight:650}.form-grid small,.hierarchy-fields small,.criterion-fields small{color:var(--color-ink-soft);font-size:.78rem;font-weight:400}.extended-options{grid-column:1 / -1;padding:1rem;border-radius:var(--radius-md);background:var(--color-surface)}.method-note,.legal-note{margin-top:1.25rem;padding:.85rem 1rem;border-left:3px solid var(--color-brand);color:var(--color-ink-soft);background:var(--color-brand-soft)}.template-note:not(:empty){margin-top:.75rem;padding:.85rem 1rem;border-left:3px solid var(--color-warning-dark);color:var(--color-warning-dark);background:var(--color-warning-soft)}.formula{display:inline-block;margin-inline:.3rem;padding:.05rem .35rem;border-radius:4px;color:var(--color-ink);background:var(--color-paper);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.weighting-model{display:grid;gap:.2rem;margin-bottom:1rem;padding:.85rem 1rem;border-left:3px solid var(--color-brand);color:var(--color-ink-soft);background:var(--color-brand-soft)}.weighting-model strong{color:var(--color-ink)}.hierarchy-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.75rem;margin-bottom:1rem}.hierarchy-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem}.builder label.check-label{display:flex;align-items:center;gap:.5rem;align-self:end;font-weight:650}.check-label input[type=checkbox]{width:1.05rem;height:1.05rem;margin:0;accent-color:var(--color-brand)}.check-label span{font-size:.85rem}.validation-summary h3{margin:.75rem 0 0;font-size:1rem}.validation-summary h3:first-child{margin-top:0}.hierarchy-toolbar>div{display:grid;gap:.15rem}.hierarchy-toolbar span,.hierarchy-empty{color:var(--color-ink-soft);font-size:.84rem}.hierarchy-list,.criterion-group-list{display:grid;gap:1rem}.main-group-card{padding:1rem;border:1px solid var(--color-brand-muted);border-radius:var(--radius-lg);background:var(--color-paper)}.criterion-group-card{padding:.9rem;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.group-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.15rem .75rem;cursor:pointer;list-style:none}.group-summary::-webkit-details-marker{display:none}.group-summary .hierarchy-level{grid-row:1;grid-column:1}.group-summary h3,.group-summary h4{grid-row:2;grid-column:1;margin:0}.group-summary h3{font-size:1.15rem}.group-summary h4{font-size:1rem}.group-summary .budget-status{grid-row:1 / span 2;grid-column:2}.group-summary:after{content:"+";grid-row:1 / span 2;grid-column:3;color:var(--color-brand-dark);font-size:1.35rem;line-height:1}details[open]>.group-summary:after{content:"−"}.hierarchy-level{color:var(--color-brand-dark);font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.budget-status{padding:.3rem .55rem;border-radius:999px;color:var(--color-ink-soft);background:var(--color-surface-strong);font-size:.76rem;font-weight:700}.budget-status.valid{color:var(--color-success-dark);background:var(--color-success-soft)}.budget-status.invalid{color:var(--color-danger-dark);background:var(--color-danger-soft)}.hierarchy-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.85rem}.hierarchy-fields .wide{grid-column:1 / -1}.main-group-actions,.criterion-create-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.criterion-group-list{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-line)}.criterion-group-card>.criteria-list{margin-top:.85rem;margin-bottom:0}.hierarchy-empty{margin:0;padding:.75rem;border:1px dashed var(--color-line);border-radius:var(--radius-sm);text-align:center}.criteria-list{display:grid;gap:.75rem;margin-bottom:1rem}.criterion-card{overflow:clip;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper)}.criterion-card[open]{border-color:var(--color-brand-muted);box-shadow:0 0 0 1px var(--color-brand-soft)}.criterion-card>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center;min-height:3.7rem;padding:.75rem 1rem;cursor:pointer;list-style:none}.criterion-card>summary::-webkit-details-marker{display:none}.criterion-card>summary:after{content:"+";grid-column:3;grid-row:1;color:var(--color-brand-dark);font-size:1.35rem;line-height:1}.criterion-card[open]>summary:after{content:"−"}.criterion-summary-text{display:grid;min-width:0}.criterion-summary-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.criterion-summary-text small{color:var(--color-ink-soft)}.criterion-summary-weight{grid-column:3;grid-row:1;margin-right:2rem;color:var(--color-ink-soft);font-size:.84rem;font-weight:700}.criterion-type{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:50%;font-size:.82rem;font-weight:800}.criterion-type-a{color:var(--color-danger-dark);background:var(--color-danger-soft)}.criterion-type-b{color:var(--color-success-dark);background:var(--color-success-soft)}.criterion-body{padding:1rem;border-top:1px solid var(--color-line);background:var(--color-surface)}.criterion-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.criterion-fields .wide{grid-column:1 / -1}.criterion-card[data-criterion-type=A] .b-only{display:none}.binary-scoring-note{display:grid;gap:.15rem;padding:.8rem;border-left:3px solid var(--color-success-dark);color:var(--color-ink-soft);background:var(--color-success-soft)}.score-anchor-list{display:grid;gap:.75rem;padding:.85rem;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-paper)}.score-anchor-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:start}.score-anchor-heading>div{display:grid}.score-anchor-heading span{color:var(--color-ink-soft);font-size:.8rem}.score-anchor-editor{display:grid;grid-template-columns:minmax(6rem,.2fr) minmax(0,1fr) auto;gap:.65rem;align-items:end;padding-top:.75rem;border-top:1px solid var(--color-line)}.criterion-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-line)}.offer-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.75rem;margin-bottom:1rem}.offer-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,.7fr) auto;gap:.65rem;align-items:end;padding:.9rem;border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}.evaluation-wrap{margin-top:1.5rem}.evaluation-table caption,.results-table caption{padding-bottom:.65rem;color:var(--color-ink);font-size:1rem;font-weight:750;text-align:left}.evaluation-table th:first-child{min-width:18rem}.evaluation-table input,.evaluation-table select{min-width:7.5rem;width:100%}.criterion-cell{display:grid;gap:.1rem}.criterion-cell small{color:var(--color-ink-soft)}.anchor-help{margin-top:.35rem;color:var(--color-ink-soft);font-size:.78rem;font-weight:400}.anchor-help summary{cursor:pointer;color:var(--color-brand-dark);font-weight:650}.anchor-help dl{display:grid;grid-template-columns:auto 1fr;gap:.25rem .5rem;margin:.5rem 0 0}.anchor-help dt{font-weight:750}.anchor-help dd{margin:0}.validation-summary{display:grid;gap:.5rem}.validation-summary>p{max-width:none;margin:0;padding:.75rem .9rem;border-radius:var(--radius-sm)}.validation-summary .validation-ok{color:var(--color-success-dark);background:var(--color-success-soft)}.validation-summary .validation-error{color:var(--color-danger-dark);background:var(--color-danger-soft)}.validation-summary .validation-warning{color:var(--color-warning-dark);background:var(--color-warning-soft)}.result-statement{max-width:none;margin:1rem 0;font-size:1.08rem;font-weight:750}.result-status{display:inline-block;padding:.18rem .45rem;border-radius:999px;font-size:.76rem;font-weight:750}.result-status.valid{color:var(--color-success-dark);background:var(--color-success-soft)}.result-status.excluded{color:var(--color-danger-dark);background:var(--color-danger-soft)}.result-status.outside{color:var(--color-warning-dark);background:var(--color-warning-soft)}.result-reasons{margin:.3rem 0 0;padding-left:1.1rem;color:var(--color-ink-soft);font-size:.78rem}.calculation-note{margin:.65rem 0 0;color:var(--color-ink-soft);font-size:.78rem}.builder [aria-invalid=true]{border-color:var(--color-danger-dark);box-shadow:0 0 0 1px var(--color-danger-soft)}@media(max-width:760px){.builder-heading{display:grid}.local-note{width:100%}.builder-steps{grid-template-columns:repeat(2,1fr)}.score-anchor-editor,.form-grid-2,.hierarchy-fields,.criterion-fields{grid-template-columns:1fr}.extended-options,.hierarchy-fields .wide,.criterion-fields .wide{grid-column:auto}.hierarchy-toolbar{display:grid}.group-summary{grid-template-columns:minmax(0,1fr) auto}.group-summary .budget-status{grid-row:3;grid-column:1;justify-self:start}.group-summary:after{grid-row:1 / span 2;grid-column:2}.criterion-summary-weight{grid-column:2 / 4;grid-row:2;margin-right:0;text-align:left}.section-heading.compact{display:grid}.offer-card{grid-template-columns:1fr}.save-status{width:100%;margin-left:0}}@media print{.site-header,.site-footer,.builder-steps,.builder-toolbar,.button,.main-group-actions,.criterion-create-actions,.criterion-actions,.local-note{display:none!important}.builder-panel,.criterion-card{break-inside:avoid;box-shadow:none}.criterion-card>.criterion-body{display:block!important}.group-summary:after,.criterion-card>summary:after{display:none!important}}
