.calcpeli{margin-top:20px;min-width:0}.clp-selector{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;align-items:end;margin-bottom:24px}.clp-selector>input{font:inherit;font-size:calc(16px * var(--pelison-type-scale, 1));width:100%;min-width:0;box-sizing:border-box;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text)}.clp-medicine-heading{margin:0 0 16px}.clp-medicine-heading h2{font-size:calc(24px * var(--pelison-type-scale, 1));margin:0 0 5px}.clp-presentation{color:var(--muted);font-size:calc(15px * var(--pelison-type-scale, 1));line-height:1.4;margin:0 0 9px}.clp-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.clp-guide{padding:17px 20px;background:var(--surface);border:1px solid var(--border);border-radius:14px;margin:16px 0}.clp-guide>h3{font-size:calc(16px * var(--pelison-type-scale, 1));margin:0 0 10px}.clp-guide>summary{cursor:pointer;font-weight:600}.clp-guide .content-markdown{font-size:calc(15px * var(--pelison-type-scale, 1));line-height:1.55}.clp-columns{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr);gap:18px;align-items:start}.clp-form{background:var(--surface);padding:20px;border-radius:16px;border:1px solid var(--border)}.clp-result{background:var(--surface);padding:20px;border-radius:16px;border:1px solid var(--border);min-width:0}.calcpeli input,.calcpeli select,.clp-editor input,.clp-editor select{font-size:calc(16px * var(--pelison-type-scale, 1));min-width:0}.clp-primary{background:var(--blue-soft,rgba(60,120,210,.12));border-radius:12px;padding:15px;margin-bottom:14px;color:var(--text)}.clp-primary>span{display:block;font-size:calc(13px * var(--pelison-type-scale, 1));color:var(--muted);margin-bottom:5px}.clp-primary>strong{color:var(--blue);font-size:calc(29px * var(--pelison-type-scale, 1));line-height:1.2}.clp-result-row{display:flex;align-items:start;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--border);font-size:calc(14px * var(--pelison-type-scale, 1))}.clp-result-row>span{color:var(--muted)}.clp-result-row>strong{text-align:right;overflow-wrap:anywhere}.clp-warning,.clp-error{color:var(--danger,#bd4854);font-size:calc(14px * var(--pelison-type-scale, 1));line-height:1.5}.clp-error{padding:10px 0}.clp-dose-table{width:100%;font-size:calc(13px * var(--pelison-type-scale, 1));border-collapse:collapse;margin:18px 0 0}.clp-dose-table th,.clp-dose-table td{padding:8px;text-align:left;border-bottom:1px solid var(--border)}.clp-dose-table .active{background:rgba(65,130,220,.12);color:var(--blue);font-weight:600}.clp-reference{color:var(--muted);font-size:calc(14px * var(--pelison-type-scale, 1))}.clp-editor{margin:16px 0}.clp-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.clp-editor-toolbar select{flex:1;min-width:180px}.clp-edit-card{padding:15px 0;border-top:1px solid var(--border);margin-top:15px}.clp-edit-card h3{font-size:calc(16px * var(--pelison-type-scale, 1));margin:0 0 12px}.clp-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.clp-edit-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;align-items:end;border-bottom:1px solid var(--border);padding:14px 0}.clp-editor .content-editor{margin:12px 0}.clp-editor .pc-field>input,.clp-editor .pc-field>select,.clp-editor-toolbar>select{width:100%;box-sizing:border-box;font-family:inherit;background:var(--surface);color:var(--text);border:1px solid var(--border);padding:10px;border-radius:10px}.clp-editor .pc-field-label{display:block;margin-bottom:6px;font-size:calc(13px * var(--pelison-type-scale, 1))}.clp-json{width:100%;min-height:220px;font-family:monospace;font-size:calc(13px * var(--pelison-type-scale, 1))}.clp-result .pc-result-actions{margin-top:18px}
@media(max-width:650px){.clp-selector,.clp-columns{grid-template-columns:1fr}.clp-options{grid-template-columns:1fr}.clp-form,.clp-result,.clp-guide{padding:16px}.clp-result-row{font-size:calc(14px * var(--pelison-type-scale, 1))}.clp-medicine-heading h2{font-size:calc(22px * var(--pelison-type-scale, 1))}.clp-primary>strong{font-size:calc(27px * var(--pelison-type-scale, 1))}}

.clp-protocol { white-space: pre-line; line-height: 1.7; font-size: calc(15px * var(--pelison-type-scale, 1)); margin: 0; }
.clp-calculator-use{font-size:calc(15px * var(--pelison-type-scale, 1));line-height:1.5;margin:15px 0 18px}
.clp-result:is([data-state=limit],[data-state=blocked]){background:#fff1f2;border-color:#e9a6af}
.clp-result[data-state=limit] .clp-primary,.clp-result[data-state=blocked] .clp-primary{background:#fbd9dd}
.clp-result[data-state=limit] .clp-primary>strong,.clp-result[data-state=limit] .clp-primary>span{color:#a8263a}
[data-theme=dark] .clp-result:is([data-state=limit],[data-state=blocked]){background:#32232c;border-color:#985261}
[data-theme=dark] .clp-result[data-state=limit] .clp-primary{background:#472b36}
[data-theme=dark] .clp-result[data-state=limit] .clp-primary>strong,[data-theme=dark] .clp-result[data-state=limit] .clp-primary>span,[data-theme=dark] .clp-result .clp-error{color:#ffadba}

.gw-calcgp { padding: 18px; }
.gw-calcgp .calcpeli { margin-top: 0; }
.clp-view-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.clp-view-tabs [aria-pressed=true]{color:var(--blue);background:var(--blue-soft,rgba(60,120,210,.12));border-color:var(--blue)}
.clp-comparison-help{font-size:calc(14px * var(--pelison-type-scale, 1));line-height:1.5;color:var(--muted);margin:0 0 16px}
.clp-comparison-common{margin-bottom:14px;max-width:560px}
.clp-comparison-preparations{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.clp-comparison-preparations .clp-form{min-width:0;height:100%;box-sizing:border-box}
.clp-comparison-preparations h3{font-size:calc(17px * var(--pelison-type-scale, 1));margin:0 0 14px}
.clp-comparison-result{margin-top:16px}
.clp-comparison-result .clp-result-row>strong{max-width:62%}
@media(max-width:650px){.clp-comparison-preparations{grid-template-columns:1fr}.clp-comparison-common{max-width:none}.clp-comparison-result .clp-result-row{gap:10px}}
@media(max-width:650px){.gw-calcgp { padding: 12px; }}
