.cp-calculator{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;line-height:1.35}.cp-grid{display:grid;grid-template-columns:1fr;gap:16px;margin:16px 0}@media(min-width:980px){.cp-grid{grid-template-columns:420px 1fr;align-items:start}}.cp-card{background:#fff;border:1px solid rgb(0 0 0 / .08);border-radius:14px;box-shadow:0 1px 2px rgb(0 0 0 / .04);padding:14px}.cp-card-header h3{margin:0 0 4px 0;font-size:18px}.cp-card-header h4{margin:0 0 10px 0;font-size:14px}.cp-muted{margin:0;color:rgb(0 0 0 / .6);font-size:13px}.cp-fields{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}@media(min-width:520px){.cp-fields{grid-template-columns:1fr 1fr}}.cp-field--full{grid-column:1/-1}.cp-fields>.cp-actions,.cp-fields>.cp-note,.cp-fields>.cp-validation{grid-column:1/-1}.cp-validation.is-hidden{display:none}.cp-field label{display:block;font-size:13px;margin:0 0 6px 0;color:rgb(0 0 0 / .75)}.cp-field input,.cp-field select{width:100%;padding:10px 10px;border-radius:10px;border:1px solid rgb(0 0 0 / .14);background:#fff}.cp-hint{margin-top:6px;color:rgb(0 0 0 / .55);font-size:12px}.cp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.cp-btn{border:1px solid rgb(0 0 0 / .14);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer}.cp-btn:hover{background:rgb(0 0 0 / .03)}.cp-btn-primary{background:#111;color:#fff;border-color:#111}.cp-btn-primary:hover{background:#000}.cp-note{margin-top:8px;font-size:12px;color:rgb(0 0 0 / .6)}.cp-validation{margin-top:10px;padding:10px;border-radius:12px;border:1px dashed rgb(0 0 0 / .18);background:rgb(0 0 0 / .02);font-size:13px}.cp-validation .ok{color:#0a7f2e}.cp-validation .bad{color:#b00020}.cp-toggle{display:flex;align-items:center;gap:10px}.cp-toggle input{width:auto}.cp-preview-grid{display:grid;grid-template-columns:1fr;gap:14px}@media(min-width:980px){.cp-preview-grid{grid-template-columns:1fr 1fr}}.cp-svg{border:1px solid rgb(0 0 0 / .08);border-radius:12px;padding:8px;min-height:240px;display:flex;align-items:center;justify-content:center;background:rgb(0 0 0 / .015)}.cp-svg--small{min-height:140px}.cp-alzado-stack{display:grid;grid-template-columns:1fr;gap:10px}.cp-alzado-label{font-size:12px;color:rgb(0 0 0 / .65);margin:0 0 6px 2px}.cp-summary{margin-top:10px;padding:10px;border-radius:12px;background:rgb(0 0 0 / .02);border:1px solid rgb(0 0 0 / .08);font-size:13px}.cp-summary ul{margin:6px 0 0 18px}.cp-summary-alert{margin:8px 0;padding:8px 10px;border-radius:10px;border:1px solid rgb(176 0 32 / .25);background:rgb(176 0 32 / .06);color:#b00020}.cp-badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;font-size:11px;line-height:1.2;vertical-align:middle;border:1px solid #fff0}.cp-badge--bad{background:rgb(176 0 32 / .10);border-color:rgb(176 0 32 / .25);color:#b00020}.cp-badge--ok{background:rgb(10 127 46 / .10);border-color:rgb(10 127 46 / .25);color:#0a7f2e}.cp-results{margin-top:16px}.cp-tabs{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.cp-tab{border:1px solid rgb(0 0 0 / .14);background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer}.cp-tab.is-active{background:#111;color:#fff;border-color:#111}.cp-tabpanel{display:none}.cp-tabpanel.is-active{display:block}.cp-table-actions{margin:8px 0}.cp-table-wrap{overflow:auto;border:1px solid rgb(0 0 0 / .08);border-radius:12px}.cp-table{width:100%;border-collapse:separate;border-spacing:0;min-width:900px}.cp-table th,.cp-table td{padding:10px;border-bottom:1px solid rgb(0 0 0 / .08);vertical-align:top}.cp-table th{font-size:12px;color:rgb(0 0 0 / .65);text-align:left;background:rgb(0 0 0 / .02);position:sticky;top:0;z-index:1}.cp-table td input{width:100%;min-width:120px;padding:8px;border-radius:10px;border:1px solid rgb(0 0 0 / .14)}.cp-table td select{width:100%;min-width:120px;padding:8px;border-radius:10px;border:1px solid rgb(0 0 0 / .14);background:#fff}.cp-table td span{display:block;min-width:120px;padding:8px;border-radius:10px;background:rgb(0 0 0 / .02);border:1px solid rgb(0 0 0 / .06)}.cp-table td .cp-row-meta{font-size:11px;color:rgb(0 0 0 / .55);margin-top:4px}.cp-row-actions{display:flex;gap:6px}.cp-row-actions button{padding:6px 10px;border-radius:10px;border:1px solid rgb(0 0 0 / .14);background:#fff;cursor:pointer}.cp-totals,.cp-grand-total{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid rgb(0 0 0 / .08)}.cp-grand-total{font-size:16px}