:root{--muted:#9fb0cc;--text:#eaf0ff;--accent:#1fb9e0;--ar:31,185,224;--bad:#ff6e6e;--radius:18px;--bg1:rgba(255,255,255,.06);--bg2:rgba(255,255,255,.03);--ab:rgba(var(--ar),.28);--db:#041025}
.pcalc-approved-wrap{margin:0;padding:28px;background: #041025;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial}
.pcalc-box{max-width:980px;margin:0 auto;background:linear-gradient(180deg,var(--bg1),var(--bg2));border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:18px;box-shadow:0 18px 60px rgba(0,0,0,.18)}
.pcalc-box.is-over{border-color:rgba(255,110,110,.35);box-shadow:0 18px 60px rgba(0,0,0,.18),0 0 0 1px rgba(255,110,110,.18) inset}
.pcalc-title{margin:0;font-size:24px;line-height:1.2}.pcalc-subtitle{margin-top:6px;font-size:14px;color:var(--muted);max-width:80ch}
.pcalc-toolbar{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pcalc-tool{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;border:1px solid var(--ab);background:rgba(0,0,0,.1)}
.pcalc-mode{margin-left:auto;font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.01em;opacity:.95}
.lbl{font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.02em}.grp{display:flex;gap:6px;flex-wrap:wrap}
.pcalc-chip,.pcalc-pill{border:1px solid var(--db);background:rgba(255,255,255,.03);color:var(--text);cursor:pointer;user-select:none;transition:transform .06s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.pcalc-chip{padding:8px 10px;border-radius:999px;font-size:13px;line-height:1}
.pcalc-pill{padding:9px 12px;border-radius:12px;font-size:14px}
.pcalc-chip:hover,.pcalc-pill:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.26)}
.pcalc-chip.is-active,.pcalc-pill.is-active{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}
.pcalc-steps{display:grid;gap:12px;margin-top:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:780px){.pcalc-steps{grid-template-columns:1fr}}
.pcalc-step{background:rgba(0,0,0,.12);border:1px solid var(--ab);border-radius:14px;padding:14px}
.pcalc-step-head{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;margin-bottom:10px}
.pcalc-step-title-row{display:flex;align-items:center;gap:10px}
.pcalc-step-num{width:28px;height:28px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 22%,transparent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);font-weight:700}
.pcalc-step-title{font-weight:700;font-size:15px}.pcalc-step-unit{font-size:13px;color:var(--muted)}
.pcalc-syr-ref{margin-top:6px;display:flex;flex-direction:column;align-items:center;gap:6px}
.pcalc-syr-card{width:100%}
.pcalc-syr-card{border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.10);border-radius:14px;padding:4px 6px;transition:border-color .2s ease,box-shadow .2s ease;display:none;width:100%}
.pcalc-syr-card.is-active{display:block}
.pcalc-syr-card.is-active{border-color:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:0 0 0 3px rgba(var(--ar),.12)}
.pcalc-syr-cap{margin-top:6px;font-size:12px;color:var(--muted);font-weight:700;letter-spacing:.01em;text-align:center}
.pcalc-syr-hint{font-size:12px;color:var(--muted);text-align:center;max-width:52ch}
.pcalc-mini{width:48.4%;max-width:264px;min-width:198px;height:auto;max-height:46px;display:block;margin:0 auto}
.pcalc-mini text{fill:rgba(255,255,255,.78);font-size:8.5px;font-weight:800}
.pcalc-mini .b{fill:rgba(255,255,255,.10);stroke:rgba(255,255,255,.22);stroke-width:1.4}
.pcalc-mini .i{fill:rgba(0,0,0,.18);stroke:rgba(255,255,255,.12);stroke-width:1.1}
.pcalc-mini .t{stroke:rgba(255,255,255,.34);stroke-width:1.4}
.pcalc-icon-wrap{width:156px;height:44px;display:inline-flex;align-items:center;justify-content:flex-start}
.pcalc-icon{width:156px;height:44px;display:block}
.pcalc-inline{margin-top:10px}
.pcalc-num{width:220px;max-width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(var(--ar),.22);background:rgba(0,0,0,.2);color:var(--text);outline:none;font-size:15px;transition:box-shadow .22s ease,border-color .22s ease}
.pcalc-num.is-locked{opacity:.65;cursor:not-allowed}
.pcalc-num.is-invalid{border-color:rgba(255,110,110,.55);box-shadow:0 0 0 3px rgba(255,110,110,.12)}
.pcalc-num:focus{border-color:rgba(var(--ar),.75);box-shadow:0 0 0 3px rgba(var(--ar),.18);animation:p 1.35s ease-in-out infinite}
@keyframes p{0%{box-shadow:0 0 0 3px rgba(var(--ar),.10)}50%{box-shadow:0 0 0 5px rgba(var(--ar),.18)}100%{box-shadow:0 0 0 3px rgba(var(--ar),.10)}}
@media (prefers-reduced-motion:reduce){.pcalc-num:focus{animation:none}}
.pcalc-help{margin-top:8px;font-size:12px;color:var(--muted)}.pcalc-help.is-bad{color:var(--bad)}
.pcalc-result-area{margin-top:14px}
.pcalc-headline{font-size:20px;padding:14px;border-radius:14px;border:1px dashed var(--ab);background:rgba(0,0,0,.12)}
.pcalc-headline.is-over{border-color:rgba(255,110,110,.55)}
.pcalc-callout{margin-top:10px;padding:12px;border-radius:14px;border:1px solid rgba(255,110,110,.35);background:rgba(255,110,110,.10);color:rgba(255,230,230,.95);font-size:13px;line-height:1.35;display:none}
.pcalc-callout.is-show{display:block}
.pcalc-metrics{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.pcalc-metric{flex:1 1 220px;padding:12px;border-radius:14px;border:1px solid var(--ab);background:rgba(0,0,0,.10)}
.pcalc-metric .k{font-size:13px;color:var(--muted)}.pcalc-metric .v{font-size:17px;margin-top:6px}
.pcalc-syringe-area{margin-top:12px;padding:14px;border-radius:14px;border:1px solid var(--ab);background:rgba(0,0,0,.10)}
.pcalc-syringe-area.is-over{border-color:rgba(255,110,110,.45);box-shadow:0 0 0 1px rgba(255,110,110,.18) inset}
.pcalc-syringe-title{font-weight:700;font-size:14px;margin-bottom:10px;color:var(--muted)}
.pcalc-syringe{width:100%;max-width:980px;height:auto;display:block;margin:0 auto}
.pcalc-svg-wing{fill:rgba(255,255,255,.07);stroke:rgba(255,255,255,.22);stroke-width:2.2}
.pcalc-svg-rod,.pcalc-svg-thumb{fill:rgba(255,255,255,.10);stroke:rgba(255,255,255,.22);stroke-width:2}
.pcalc-svg-hub{fill:rgba(255,255,255,.08);stroke:rgba(255,255,255,.20);stroke-width:2}
.pcalc-svg-needle{fill:rgba(255,255,255,.10);stroke:rgba(255,255,255,.20);stroke-width:2}
.pcalc-svg-needle-line{stroke:rgba(255,255,255,.45);stroke-width:3;stroke-linecap:round}
.pcalc-svg-ticks line{stroke:rgba(255,255,255,.30);stroke-width:2}
.pcalc-svg-text{fill:rgba(255,255,255,.70);font-size:13px}
.pcalc-svg-marker{stroke:rgba(var(--ar),.95);stroke-width:3;stroke-linecap:round}
.pcalc-svg-marker-text{fill:rgba(var(--ar),.95);font-size:13px;font-weight:800}
.pcalc-legend{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:10px}
.pcalc-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;border:1px solid var(--db);background:rgba(255,255,255,.03);font-size:13px;color:var(--muted)}
.pcalc-note{margin-top:10px;font-size:13px;color:var(--muted);line-height:1.45}.pcalc-note.is-bad{color:var(--bad)}.pcalc-disclaimer{margin-top:10px;font-size:13px;color:var(--muted)}
@media (max-width:640px){.pcalc-wrap{padding:16px}.pcalc-icon-wrap{width:132px;height:38px}.pcalc-icon{width:132px;height:38px}.pcalc-pill{padding:10px 12px}.pcalc-title{font-size:22px}.pcalc-headline{font-size:18px}}

/* Center title + subtitle */
.pcalc-approved-wrap .pcalc-header{ text-align:center; }
.pcalc-approved-wrap .pcalc-title,
.pcalc-approved-wrap .pcalc-subtitle{ text-align:center; }
.pcalc-approved-wrap .pcalc-subtitle{ margin-left:auto; margin-right:auto; }
.pcalc-approved-wrap .pcalc-toolbar{ justify-content:center; }
.pcalc-approved-wrap .pcalc-mode{ margin-left:0; }
