.epx-canvas{border:1px solid var(--color-line);border-radius:var(--radius-3);background-color:var(--color-surface2);background-image:linear-gradient(to right, var(--color-linesoft) 1px, transparent 1px), linear-gradient(to bottom, var(--color-linesoft) 1px, transparent 1px);background-size:16px 16px;gap:1rem;margin-top:1.75rem;padding:2.5rem 1rem 1.5rem;display:grid;position:relative}@media (min-width:1024px){.epx-canvas{grid-template-columns:minmax(0,1fr) minmax(0,40rem) minmax(0,1fr);align-items:center;gap:2.5rem;padding:4rem 3.5rem 3.5rem 4.5rem}}.epx-ruler-top{border-top:1px solid var(--color-fgsubtle);color:var(--color-fgmuted);justify-content:center;font-size:.75rem;display:flex;position:absolute;top:.75rem;left:1rem;right:1rem}.epx-ruler-top:before,.epx-ruler-top:after{content:"";background:var(--color-fgsubtle);width:1px;height:9px;position:absolute;top:-5px}.epx-ruler-top:before{left:0}.epx-ruler-top:after{right:0}.epx-ruler-top span{background:var(--color-surface2);margin-top:-.6rem;padding:0 .5rem}@media (min-width:1024px){.epx-ruler-top{top:1.5rem;left:4.5rem;right:3.5rem}}.epx-ruler-left{display:none}@media (min-width:1024px){.epx-ruler-left{border-left:1px solid var(--color-fgsubtle);color:var(--color-fgmuted);align-items:center;font-size:.75rem;display:flex;position:absolute;top:4rem;bottom:3.5rem;left:2rem}.epx-ruler-left span{background:var(--color-surface2);writing-mode:vertical-rl;margin-left:-.6rem;padding:.375rem 0;transform:rotate(180deg)}}.epx-margin{flex-wrap:wrap;gap:.5rem;font-size:.8125rem;display:flex}.epx-margin li{border:1px dashed var(--color-accent-500);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-fgsoft);padding:.375rem .75rem}.epx-margin-l{order:0}.epx-margin-r{order:2}.epx-original{order:1}@media (max-width:1023px){.epx-margin-r{order:0;margin-top:-.5rem}}@media (min-width:1024px){.epx-margin{flex-direction:column;gap:.75rem}.epx-margin-l{align-items:flex-end}.epx-margin-r{align-items:flex-start}.epx-margin li{padding:.5rem .875rem}.epx-margin-l li:nth-child(2),.epx-margin-r li:nth-child(2){opacity:.85}.epx-margin-l li:nth-child(3),.epx-margin-r li:nth-child(3){opacity:.7}}.epx-original{border:2px solid var(--color-accent-600);background:var(--color-surface);border-radius:4px;padding:1.5rem 1.125rem;position:relative;box-shadow:0 30px 60px -30px #16161659}@media (min-width:640px){.epx-original{padding:2rem 2rem 1.75rem}}.epx-handle{background:var(--color-surface);border:2px solid var(--color-accent-600);border-radius:999px;position:absolute}.epx-h-t,.epx-h-b{width:1.75rem;height:.625rem;margin-left:-.875rem;left:50%}.epx-h-t{top:-.375rem}.epx-h-b{bottom:-.375rem}.epx-h-l,.epx-h-r{width:.625rem;height:1.75rem;margin-top:-.875rem;top:50%}.epx-h-l{left:-.375rem}.epx-h-r{right:-.375rem}.epx-form{flex-direction:column;gap:1.125rem;display:flex}.epx-row{gap:1.125rem;display:grid}@media (min-width:640px){.epx-row{grid-template-columns:1fr 1fr}}.epx-label{font-family:var(--font-display);color:var(--color-fgstrong);font-size:.8125rem;font-weight:600;display:block}.epx-opt{font-family:var(--font-sans);color:var(--color-fgsubtle);margin-left:.25rem;font-weight:400}.epx-input{border:1px solid var(--color-line);border-radius:var(--radius-1);background:var(--color-surface);width:100%;min-height:2.875rem;color:var(--color-fgstrong);margin-top:.375rem;padding:0 .875rem;font-size:1rem;transition:border-color .12s ease-out;display:block}.epx-input:hover{border-color:var(--color-n-400)}.epx-input:focus-visible{outline:2px solid var(--color-accent-600);outline-offset:1px;border-color:var(--color-accent-600)}.epx-input[aria-invalid=true]{border-color:var(--color-danger-600);background:var(--color-danger-50)}.epx-sum{align-items:stretch;margin-top:.375rem;display:inline-flex}.epx-sum-orig{border:2px solid var(--color-accent-600);border-radius:var(--radius-1) 0 0 var(--radius-1);background:var(--color-surface);min-width:4.5rem;font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--color-fgstrong);white-space:nowrap;align-items:center;padding:0 .875rem;font-size:1.125rem;font-weight:600;display:inline-flex}.epx-sum-wait{background:var(--color-surface2)}.epx-sum-built{border:1px dashed var(--color-accent-500);border-radius:0 var(--radius-1) var(--radius-1) 0;background:var(--color-accent-50);color:var(--color-fgmuted);border-left:0;align-items:center;gap:.5rem;padding:.25rem .375rem .25rem .75rem;font-weight:600;display:inline-flex}.epx-input.epx-sum-input{text-align:center;width:4rem;margin-top:0;padding:0 .5rem;font-weight:600}.epx-area{resize:vertical;min-height:9.5rem;padding:.75rem .875rem;line-height:1.55}.epx-area::placeholder{color:var(--color-fgsubtle)}.epx-hint,.epx-err{margin-top:.3125rem;font-size:.8125rem}.epx-hint{color:var(--color-fgmuted)}.epx-err{color:var(--color-danger-600);font-weight:600}.epx-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.25rem;display:flex}.epx-from{color:var(--color-fgmuted);font-size:.8125rem}.epx-from b{color:var(--color-local-600);font-weight:600}.epx-send{border-radius:var(--radius-pill);background:var(--color-accent-600);min-height:2.875rem;color:var(--color-accent-ink);align-items:center;gap:.5rem;padding:0 .5rem 0 1.125rem;font-size:.9375rem;font-weight:700;transition:background-color .12s ease-out;display:inline-flex}.epx-send:hover:not(:disabled){background:var(--color-accent-700)}.epx-send:disabled{opacity:.6;cursor:progress}.epx-send-chip{border-radius:var(--radius-pill);background:var(--color-accent-700);padding:.25rem .625rem;font-size:.75rem;font-weight:600}@media (max-width:480px){.epx-send{justify-content:center;width:100%}}.epx-fail{border-radius:var(--radius-1);background:var(--color-accent-50);box-shadow:inset 0 0 0 1px var(--color-accent-500);color:var(--color-fg);padding:.875rem 1rem;font-size:.875rem;line-height:1.5}.epx-fallback{min-height:2.75rem;color:var(--color-accent-700);text-underline-offset:3px;align-items:center;font-weight:700;text-decoration:underline;display:inline-flex}.epx-trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.epx-done{text-align:center;padding:1rem 0}.epx-badge{border-radius:var(--radius-pill);background:var(--color-accent-600);color:var(--color-accent-ink);padding:.25rem .625rem;font-size:.8125rem;font-weight:700;display:inline-block}.epx-again{border:1px solid var(--color-line);border-radius:var(--radius-pill);min-height:2.875rem;color:var(--color-fgstrong);margin-top:1.5rem;padding:0 1.25rem;font-weight:600}.epx-again:hover{background:var(--color-surface2)}@media (prefers-reduced-motion:reduce){.epx-input,.epx-send{transition:none}}
