@font-face{font-family:Geist;src:url(/fonts/geist-variable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{color:#171a1f;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Geist,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.import-gate,.config-error{width:min(720px,100% - 40px);margin:0 auto;padding:clamp(64px,14vh,144px) 0 80px}.landing{background:linear-gradient(90deg,#fde3d466,#f9dae966 49%,#a2d1ef66),#fff;min-height:100vh;position:relative;overflow:hidden}.landing:after{content:"";filter:blur(120px);pointer-events:none;background:#1e38ff1f;border-radius:50%;width:560px;height:560px;position:absolute;top:80px;right:-210px}.landing-texture{opacity:.32;pointer-events:none;background-image:radial-gradient(#171a1f29 .8px,#0000 .8px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.landing-inner{z-index:1;width:min(1380px,100% - 64px);min-height:100vh;margin:0 auto;padding:26px 0 40px;position:relative}.landing-brand{color:#171a1f;letter-spacing:-.02em;align-items:center;gap:10px;min-height:42px;font-size:17px;font-weight:650;display:inline-flex}.landing-brand .ollie-logo{width:24px;height:27px}.landing-brand-product{color:#556274;letter-spacing:0;border-left:1px solid #171a1f2e;margin-left:2px;padding-left:12px;font-size:13px;font-weight:500}.landing-hero{max-width:980px;padding:clamp(88px,12vh,136px) 0 clamp(72px,10vh,112px)}.landing-kicker{color:#3b5570;align-items:center;gap:10px;margin:0 0 24px;font-size:14px;font-weight:550;display:flex}.landing-kicker span{color:#1e38ff;letter-spacing:.02em;text-transform:uppercase;background:#dbddff;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.eyebrow{color:#58705b;letter-spacing:.14em;text-transform:uppercase;margin:0 0 13px;font-size:12px;font-weight:750}h1{letter-spacing:-.035em;max-width:680px;margin:0;font-family:inherit;font-size:clamp(42px,7vw,72px);font-weight:350;line-height:1.05}.landing h1{letter-spacing:-.055em;text-wrap:balance;max-width:960px;font-size:clamp(3.35rem,7.2vw,6.5rem);font-weight:300;line-height:.98}.lede,.import-gate>p:not(.eyebrow,.field-help,.inline-error){color:#596259;max-width:590px;margin:28px 0;font-size:18px;line-height:1.6}.landing .lede{color:#3b5570;text-wrap:balance;max-width:650px;margin:30px 0 32px;font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.55}.landing-actions,.toolbar-actions{flex-wrap:wrap;gap:10px;display:flex}.button,.file-picker{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 19px;font-weight:650;transition:transform .12s,background .12s;display:inline-flex}.button:hover:not(:disabled),.file-picker:hover{transform:translateY(-1px)}.button-primary,.file-picker{color:#fff;background:#1e38ff}.button-primary:hover:not(:disabled),.file-picker:hover{background:#1228e5}.button-secondary{color:#171a1f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;border-color:#dadee3}.landing-actions{gap:12px}.landing-actions .button{min-height:54px;padding:0 24px}.landing-primary{gap:14px;box-shadow:0 10px 30px #1e38ff2e}.landing-primary span{font-size:20px;font-weight:400;line-height:1}.button-quiet{color:#29312a;background:#fff;border-color:#d4d7cf}.button-small{min-height:38px;padding:0 14px;font-size:13px}.privacy-note,.field-help{color:#7b8279;margin-top:20px;font-size:13px}.landing .privacy-note{color:#647184;align-items:center;gap:9px;margin-top:18px;display:flex}.landing-highlights{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffa8;border:1px solid #444b5726;border-radius:14px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden;box-shadow:0 22px 70px #14111f12}.landing-highlights>div{align-content:start;gap:9px;min-height:164px;padding:26px;display:grid}.landing-highlights>div+div{border-left:1px solid #444b5721}.highlight-number{color:#1e38ff;letter-spacing:.08em;font-size:12px;font-weight:700}.landing-highlights strong{letter-spacing:-.015em;font-size:17px;font-weight:600}.landing-highlights p{color:#556274;max-width:310px;margin:0;font-size:14px;line-height:1.5}.file-picker{margin-top:4px;position:relative;overflow:hidden}.file-picker input{opacity:0;width:1px;height:1px;position:absolute}.inline-error{color:#9a302b;font-weight:650}.text-button,.wordmark{color:inherit;background:0 0;border:0;padding:0}.text-button{color:#48614c;text-underline-offset:4px;margin-top:30px;text-decoration:underline}.sandbox-shell{background:#f5f5f7;flex-direction:column;height:100vh;display:flex}.sandbox-toolbar{background:#fff;border-bottom:1px solid #e4e4e9;grid-template-columns:minmax(180px,1fr) auto minmax(260px,1fr);align-items:center;gap:24px;min-height:68px;padding:10px 20px;display:grid}.wordmark{color:#101017;letter-spacing:-.015em;justify-self:start;align-items:center;gap:9px;font-size:16px;font-weight:600;display:inline-flex}.ollie-logo{fill:currentColor;width:22px;height:25px}.wordmark-product{color:#71717b;letter-spacing:0;border-left:1px solid #dedee4;margin-left:1px;padding-left:10px;font-size:12px;font-weight:500}.status{color:#666672;white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.status-dot{background:#8f968e;border-radius:50%;width:7px;height:7px}.status-loading{background:#c69b1d;box-shadow:0 0 0 4px #c69b1d21}.status-ready{background:#3c8b50}.status-warning{background:#c69b1d}.status-error{background:#ba443b}.toolbar-actions{justify-self:end}.sandbox-toolbar .button{border-radius:10px;min-height:42px}.sandbox-toolbar .button-quiet{color:#5e5e68;border-color:#e2e2e7}.sandbox-toolbar .button-primary{box-shadow:0 1px 2px #2538ff2e}.wordmark:focus-visible,.sandbox-toolbar .button:focus-visible{outline-offset:3px;outline:2px solid #2538ff}.notice{color:#3b533d;background:#eef6eb;border-bottom:1px solid #cbd5c8;padding:8px 18px;font-size:12px;line-height:1.4}.notice-warn{color:#68581b;background:#fff8dc;border-color:#e1d6a9}.notice-error{color:#842f29;background:#fff0ee;border-color:#e3bab7}.playground-stage{flex:auto;min-height:0;position:relative;overflow:hidden}.playground-frame{background:#fff;border:0;width:100%;height:100%;min-height:0;display:block}.sandbox-error-state{justify-items:start;width:min(620px,100% - 40px);margin:clamp(64px,12vh,130px) auto;display:grid}.sandbox-error-state .ollie-logo{width:30px;height:34px;margin-bottom:24px}.sandbox-error-state h1{max-width:580px;font-size:clamp(2.4rem,5vw,4.6rem);font-weight:350}.sandbox-error-state>p:not(.eyebrow){color:#556274;max-width:560px;margin:22px 0 28px;font-size:17px;line-height:1.6}.playground-lock{z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#f6f3ece0;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.playground-lock-card{color:#596259;text-align:center;background:#f9f8f4;border:1px solid #d4d5ce;border-radius:12px;justify-items:center;gap:10px;max-width:360px;padding:24px 28px;display:grid;box-shadow:0 16px 45px #29312a1f}.playground-lock-card strong{color:#29312a;font-family:Georgia,Times New Roman,serif;font-size:21px}.playground-lock-card span:last-child{font-size:13px;line-height:1.5}.playground-lock-spinner{border:3px solid #cdd4ca;border-top-color:#3c8b50;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite playground-lock-spin}@keyframes playground-lock-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.playground-lock-spinner{background:#3c8b50;border-top-color:#cdd4ca;animation:none}}.config-error h1,.import-gate h1{font-size:clamp(38px,6vw,58px)}code{background:#e8e4d9;border-radius:4px;padding:2px 5px}.turnstile-widget{z-index:1000;min-width:1px;min-height:1px;position:fixed;bottom:18px;right:18px}@media (width<=760px){.landing-inner{width:min(100% - 36px,1380px);padding-top:18px}.landing-hero{padding:72px 0 64px}.landing h1{font-size:clamp(3rem,14vw,4.8rem)}.landing-highlights{grid-template-columns:1fr}.landing-highlights>div+div{border-top:1px solid #444b5721;border-left:0}.sandbox-toolbar{grid-template-columns:1fr auto}.status{grid-area:2/1/auto/-1;justify-self:start}.toolbar-actions{grid-area:1/2}}
