.dwf-dpt{--bg:#f4fbff;--card:#fff;--ink:#123047;--muted:#567080;--line:#b9d8e8;--accent:#087ca7;--accent2:#075d7a;--good:#176b45;--bad:#9d2c2c;box-sizing:border-box;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:18px;overflow:hidden;font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.dwf-dpt *{box-sizing:border-box}.dwf-dpt button,.dwf-dpt input,.dwf-dpt select{font:inherit}.dwf-dpt__hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px 26px;background:linear-gradient(135deg,#e7f8ff,#f9fdff);border-bottom:1px solid var(--line)}.dwf-dpt__eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.76em;color:var(--accent2)}.dwf-dpt h2{margin:.15em 0 .2em;font-size:clamp(1.65rem,4vw,2.5rem)}.dwf-dpt__hero p{margin:0;color:var(--muted)}.dwf-dpt__hero-actions{display:flex;gap:8px;flex-wrap:wrap}.dwf-dpt__icon-btn,.dwf-dpt__secondary{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:9px 12px;cursor:pointer}.dwf-dpt__toolbar{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);background:var(--card)}.dwf-dpt label{font-weight:700;font-size:.9em}.dwf-dpt select,.dwf-dpt input[type=number]{width:100%;margin-top:5px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink)}.dwf-dpt__primary{align-self:end;border:0;border-radius:10px;padding:11px 16px;background:var(--accent);color:white;font-weight:800;cursor:pointer}.dwf-dpt__main{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(220px,1fr);gap:18px;padding:20px}.dwf-dpt__problem-card,.dwf-dpt__reference{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}.dwf-dpt__problem-head{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.88em}.dwf-dpt__family{font-weight:800;color:var(--accent2)}.dwf-dpt__badge{margin-left:8px;border:1px solid var(--line);border-radius:999px;padding:2px 8px}.dwf-dpt__problem-card h3{font-size:1.25em;line-height:1.4}.dwf-dpt__diagram{min-height:250px;display:grid;place-items:center;margin:18px 0;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--bg) 78%,white);border:1px solid var(--line);overflow:hidden}.dwf-dpt__diagram svg{width:100%;max-height:330px}.dwf-dpt__answer-row{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;gap:10px;align-items:end}.dwf-dpt__feedback,.dwf-dpt__hint,.dwf-dpt__explanation{margin-top:14px;padding:12px 14px;border-radius:10px}.dwf-dpt__feedback:empty{display:none}.dwf-dpt__feedback.is-good{background:#e9f7ef;color:var(--good);border:1px solid #a8d8bd}.dwf-dpt__feedback.is-bad{background:#fff0f0;color:var(--bad);border:1px solid #e2b1b1}.dwf-dpt__hint{background:#fff9e8;border:1px solid #e8d79d}.dwf-dpt__explanation{background:var(--bg);border:1px solid var(--line)}.dwf-dpt__explanation ol{margin-bottom:0}.dwf-dpt__reference h3{margin-top:0}.dwf-dpt__reference table{width:100%;border-collapse:collapse;font-size:.9em}.dwf-dpt__reference td{padding:7px 3px;border-bottom:1px solid var(--line)}.dwf-dpt__reference td:last-child{text-align:right;font-weight:700}.dwf-dpt__note{font-size:.82em;color:var(--muted)}.dwf-dpt details{margin-top:16px}.dwf-dpt summary{cursor:pointer;font-weight:800}.dwf-dpt__modal{position:fixed;inset:0;z-index:99999;background:rgba(0,20,35,.68);display:grid;place-items:center;padding:20px}.dwf-dpt__modal[hidden]{display:none}.dwf-dpt__modal-card{position:relative;width:min(620px,100%);max-height:85vh;overflow:auto;background:var(--card);color:var(--ink);border-radius:16px;padding:26px;box-shadow:0 20px 70px rgba(0,0,0,.3)}.dwf-dpt__close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:inherit;font-size:2rem;cursor:pointer}.dwf-dpt fieldset{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:12px}.dwf-dpt fieldset label{display:block;margin:7px 0}.dwf-dpt[data-theme="deep-sea"]{--bg:#071d2a;--card:#0d2b3c;--ink:#edfaff;--muted:#b9d8e6;--line:#31566a;--accent:#19a8d6;--accent2:#72d6f2}.dwf-dpt[data-theme="deep-sea"] .dwf-dpt__hero{background:#092536}.dwf-dpt[data-theme="high-contrast"]{--bg:#000;--card:#000;--ink:#fff;--muted:#fff;--line:#fff;--accent:#ffea00;--accent2:#ffea00}.dwf-dpt[data-theme="high-contrast"] .dwf-dpt__primary{color:#000}.dwf-dpt[data-text="small"]{font-size:14px}.dwf-dpt[data-text="large"]{font-size:18px}@media(max-width:850px){.dwf-dpt__toolbar{grid-template-columns:1fr 1fr}.dwf-dpt__main{grid-template-columns:1fr}.dwf-dpt__hero{flex-direction:column}.dwf-dpt__answer-row{grid-template-columns:1fr 1fr}.dwf-dpt__answer-row label{grid-column:1/-1}}@media(max-width:520px){.dwf-dpt__toolbar{grid-template-columns:1fr}.dwf-dpt__answer-row{grid-template-columns:1fr}.dwf-dpt__hero-actions{width:100%}.dwf-dpt__icon-btn{flex:1}.dwf-dpt__main{padding:12px}.dwf-dpt__problem-card,.dwf-dpt__reference{padding:15px}}

.dwf-dpt__modal-card--wide{width:min(820px,100%)}.dwf-dpt__constants-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dwf-dpt__constants-grid section{border:1px solid var(--line);border-radius:12px;padding:14px}.dwf-dpt__constants-grid h4{margin:0 0 8px}.dwf-dpt__constants-grid table{width:100%;border-collapse:collapse}.dwf-dpt__constants-grid td{padding:7px 3px;border-bottom:1px solid var(--line)}.dwf-dpt__constants-grid td:last-child{text-align:right;font-weight:800}@media(max-width:650px){.dwf-dpt__constants-grid{grid-template-columns:1fr}}
