.ep{gap:var(--s5);display:grid}.ep-counter{gap:var(--s3);align-content:start;min-height:13rem;display:grid}.ep-drop{gap:var(--s3);padding:var(--s5);background:var(--surface-2);border:1px dashed var(--line-firm);border-radius:var(--r-lg);transition:border-color var(--dur) var(--ease);justify-items:start;display:grid}.ep-drop[data-dragging=true]{border-color:var(--brass)}.ep-file{min-height:44px;padding:0 var(--s4);background:var(--surface-0);border:1px solid var(--line-firm);border-radius:var(--r-md);font-size:var(--step--1);color:var(--ink-1);cursor:pointer;transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);align-items:center;display:inline-flex}.ep-file:hover{border-color:var(--brass);color:var(--ink-0)}.ep-file input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.ep-hint{font-size:var(--step--1);color:var(--ink-2);max-width:62ch}.ep-facts{gap:var(--s3) var(--s5);padding:var(--s4);background:var(--surface-1);border:1px solid var(--line-firm);border-radius:var(--r-md);flex-wrap:wrap;display:flex}.ep-facts div{gap:2px;display:grid}.ep-facts dt{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2)}.ep-facts dd{color:var(--ink-0);max-width:34ch;margin:0}.ep-panel{gap:var(--s4);padding:var(--s5);background:var(--surface-1);border:1px solid var(--line-firm);border-radius:var(--r-lg);align-content:start;display:grid}.ep-stub{justify-content:space-between;align-items:baseline;gap:var(--s3);display:flex}.ep-num{font-size:var(--step--1);color:var(--brass-lo);letter-spacing:.04em}.ep-dim{font-size:var(--step--1);color:var(--ink-2)}.ep-perf{height:1px;margin:0 calc(-1 * var(--s5));background-image:linear-gradient(90deg, var(--line-firm) 55%, transparent 0);background-size:9px 1px;position:relative}.ep-perf:before,.ep-perf:after{content:"";border-radius:var(--r-full);background:var(--surface-0);border:1px solid var(--line);width:14px;height:14px;position:absolute;top:-7px}.ep-perf:before{left:-7px}.ep-perf:after{right:-7px}.ep-set{gap:var(--s2);display:grid}.ep-lbl{font-family:var(--font-mono);font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);display:block}.ep-seg{flex-wrap:wrap;gap:4px;display:flex}.ep-seg button{min-height:44px;padding:0 var(--s4);background:var(--surface-2);border-radius:var(--r-md);font-family:var(--font-mono);font-size:var(--step--1);color:var(--ink-1);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease)}.ep-seg button:hover{color:var(--ink-0)}.ep-seg button[aria-pressed=true]{background:var(--brass);color:var(--on-brass)}.ep-exact{align-items:center;gap:var(--s3);display:flex}.ep-exact input[type=number]{width:7em;min-height:44px;padding:0 var(--s3);background:var(--surface-0);border:1px solid var(--line-firm);border-radius:var(--r-md);color:var(--ink-0);font-size:16px}.ep-exact label{font-size:var(--step--1);color:var(--ink-2)}.ep-checks{gap:var(--s2);display:grid}.ep-checks label{align-items:center;gap:var(--s3);min-height:44px;font-size:var(--step--1);color:var(--ink-1);cursor:pointer;display:flex}.ep-help{font-size:var(--step--1);color:var(--ink-2);max-width:52ch}.ep-err{font-size:var(--step--1);color:var(--error);max-width:62ch}.ep-note{font-size:var(--step--1);color:var(--ink-1);max-width:62ch;padding-left:var(--s3);border-left:2px solid var(--brass-lo)}.ep-font{gap:var(--s2);font-size:var(--step--1);color:var(--ink-1);justify-items:start;max-width:52ch;display:grid}.ep-font button{min-height:44px;padding:0 var(--s4);background:var(--surface-2);border:1px solid var(--line-firm);border-radius:var(--r-md);font-size:var(--step--1);color:var(--ink-0);cursor:pointer}.ep-font button:hover{border-color:var(--brass)}.ep-progress{width:100%;height:6px}.ep-working{gap:var(--s3);padding:var(--s4) 0;justify-items:center;display:grid}.ep-stack{width:74px;height:96px;position:relative}.ep-leaf{background:var(--surface-0);border:1px solid var(--line-firm);box-shadow:var(--shadow-1);transform:translate(calc(var(--i) * 2px), calc(var(--i) * -3px)) rotate(calc(var(--i) * .6deg));animation:ep-land .22s var(--ease) both;border-radius:2px;position:absolute;inset:0}@keyframes ep-land{0%{opacity:0;transform:translate(calc(var(--i) * 2px), calc(var(--i) * -3px - 14px)) rotate(calc(var(--i) * .6deg))}}.ep-out{gap:var(--s5);flex-wrap:wrap;display:flex}.ep-out dt{font-size:var(--step--1);color:var(--ink-2)}.ep-out dd{color:var(--ink-0);margin:0}.ep-view{border:1px solid var(--line-firm);border-radius:var(--r-md);background:var(--surface-2);width:100%;height:360px}.ep-notes{gap:var(--s2);font-size:var(--step--1);color:var(--ink-2);max-width:56ch;padding:0;list-style:none;display:grid}.ep-notes li{padding-left:var(--s3);border-left:2px solid var(--line-firm);overflow-wrap:anywhere}.ep-primary{text-align:center;width:100%;padding:12px var(--s5);background:var(--brass);min-height:48px;color:var(--on-brass);border-radius:var(--r-md);cursor:pointer;transition:background var(--dur) var(--ease), transform var(--dur) var(--ease);font-weight:500;text-decoration:none;display:inline-block}.ep-primary:hover{background:var(--brass-hi)}.ep-primary:active{transform:translateY(1px)}.ep-primary:disabled{opacity:.6;cursor:default}@media (prefers-reduced-motion:reduce){.ep-leaf{animation:none}.ep-primary:active{transform:none}}@media (width<=860px){.ep-panel{padding:var(--s4)}.ep-counter{min-height:0}.ep-view{display:none}.ep-primary{bottom:var(--s3);position:sticky}}
