:root{--bg: #0c1014;--ink: #e8e2d6;--ink-dim: rgba(232, 226, 214, .55);--mineral: #7a92a4;--copper: #c48458;--slate: #151c24;--slate-2: #1c2630;--line: rgba(232, 226, 214, .14);--ok: #9bb8a8;--bad: #c47a6a;--display: "Fraunces", "Iowan Old Style", Georgia, serif;--sans: "Sora", "Segoe UI", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.45;-webkit-font-smoothing:antialiased}.shell{position:relative;min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:1.25rem clamp(1rem,4vw,2.5rem) 1rem;overflow:hidden}.atmosphere{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 70% 55% at 18% 20%,rgba(122,146,164,.16),transparent 58%),radial-gradient(ellipse 55% 45% at 82% 72%,rgba(196,132,88,.12),transparent 55%),linear-gradient(165deg,#0c1014,#10161c 48%,#0a0e12)}.atmosphere:after{content:"";position:absolute;inset:0;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.top,.stage,.foot{position:relative;z-index:1}.top{display:flex;justify-content:space-between;align-items:baseline}.family{font-family:var(--sans);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);text-decoration:none}.family:hover{color:var(--mineral)}.signout{border:0;background:transparent;color:var(--ink-dim);font:inherit;font-size:.75rem;letter-spacing:.06em;cursor:pointer}.signout:hover{color:var(--ink)}.stage{display:flex;flex-direction:column;justify-content:center;align-items:stretch;max-width:34rem;width:100%;margin:0 auto;padding:2rem 0 3rem;animation:rise .7s ease both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.brand{font-family:var(--display);font-size:clamp(3.4rem,12vw,5.5rem);font-weight:600;letter-spacing:-.03em;line-height:.95;color:var(--ink)}.lede{margin-top:.85rem;max-width:22rem;color:var(--ink-dim);font-size:1.05rem;animation:rise .7s ease .08s both}.flow{margin-top:2.4rem;display:grid;gap:1.1rem;animation:rise .7s ease .16s both}.drop{display:grid;gap:.35rem;justify-items:start;padding:1.6rem 1.4rem;border:1px solid var(--line);border-radius:2px;background:color-mix(in srgb,var(--slate) 88%,transparent);cursor:pointer;transition:border-color .25s ease,background .25s ease,transform .25s ease}.drop:hover,.drop.is-drag{border-color:color-mix(in srgb,var(--copper) 55%,var(--line));background:color-mix(in srgb,var(--slate-2) 92%,transparent)}.drop.is-drag{transform:scale(1.01)}.drop.has-file{border-color:color-mix(in srgb,var(--mineral) 45%,var(--line))}.drop-mark{width:2.4rem;height:2px;margin-bottom:.55rem;background:linear-gradient(90deg,var(--copper),var(--mineral));transform-origin:left center;transition:transform .35s ease}.drop.has-file .drop-mark,.drop.is-drag .drop-mark{transform:scaleX(1.55)}.drop-label{font-size:1rem;font-weight:500;word-break:break-all}.drop-meta{font-size:.8rem;color:var(--ink-dim)}.row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:end}.field{display:grid;gap:.4rem}.field>span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}.field select{width:100%;appearance:none;border:1px solid var(--line);border-radius:2px;background:var(--slate) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%7a92a4' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right .85rem center;color:var(--ink);font:inherit;font-size:1rem;padding:.85rem 2.2rem .85rem .9rem}.field select:focus{outline:1px solid color-mix(in srgb,var(--mineral) 70%,transparent);outline-offset:2px}.cta{border:0;border-radius:2px;background:var(--copper);color:#1a120c;font:inherit;font-weight:600;letter-spacing:.04em;padding:.9rem 1.45rem;cursor:pointer;transition:background .2s ease,transform .2s ease}.cta:hover:not(:disabled){background:#d09468}.cta:active:not(:disabled){transform:translateY(1px)}.cta:disabled{opacity:.45;cursor:not-allowed}.status{min-height:3.2rem;display:grid;gap:.55rem;align-content:start}.bar{height:2px;width:100%;background:color-mix(in srgb,var(--line) 80%,transparent);position:relative;overflow:hidden;border-radius:1px}.bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p, 0%);background:linear-gradient(90deg,var(--mineral),var(--copper));transition:width .35s ease}.status-done .bar:after{background:var(--ok)}.status-error .bar:after{background:var(--bad)}.status-text{font-size:.9rem;color:var(--ink-dim)}.status-done .status-text{color:var(--ok)}.status-error .status-text{color:var(--bad)}.again{justify-self:start;border:0;background:transparent;color:var(--mineral);font:inherit;font-size:.85rem;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}.foot{font-size:.7rem;letter-spacing:.08em;color:var(--ink-dim)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(max-width:520px){.row{grid-template-columns:1fr}.cta{width:100%}}@media(prefers-reduced-motion:reduce){.stage,.lede,.flow,.drop,.drop-mark,.bar:after,.cta{animation:none!important;transition:none!important}}
