.vue-heic-image{position:relative;display:inline-block}.vue-heic-image__loading,.vue-heic-image__error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;background:#ffffffe6;padding:8px 16px;border-radius:4px;box-shadow:0 2px 4px #0000001a}.vue-heic-image__error{color:#dc3545}:root{--bg: #0c0f14;--bg-elevated: #141a22;--bg-card: #1a222c;--border: rgba(255, 255, 255, .08);--text: #e8edf4;--muted: #8b98a8;--accent: #3ee6b0;--accent-dim: rgba(62, 230, 176, .15);--violet: #a78bfa;--radius: 12px;--font-display: "Syne", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--max: 1120px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;font-size:1rem}#app{min-height:100vh}.landing{min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(62,230,176,.12),transparent),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(167,139,250,.08),transparent),var(--bg)}.skip-link{position:absolute;left:-9999px;z-index:999;padding:.75rem 1rem;background:var(--accent);color:#0c0f14;font-weight:600;border-radius:6px}.skip-link:focus{left:1rem;top:1rem}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--border);background:#0c0f14d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.site-header__inner{max-width:var(--max);margin:0 auto;padding:1rem 1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}.site-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text);font-weight:700}.site-logo__mark{font-family:var(--font-display);font-size:.75rem;font-weight:800;letter-spacing:.06em;padding:.35rem .5rem;border-radius:6px;background:linear-gradient(135deg,var(--accent),#2dd4bf);color:#0c0f14}.site-logo__text{font-family:var(--font-display);font-size:1.05rem}.site-nav{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin-left:auto}.site-nav a{color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .15s}.site-nav a:hover{color:var(--text)}.site-header__actions{display:flex;gap:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;text-decoration:none;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,color .15s}.btn--primary{background:var(--accent);color:#0c0f14}.btn--primary:hover{filter:brightness(1.05)}.btn--ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn--ghost:hover{border-color:var(--muted)}.btn--outline{background:transparent;color:var(--accent);border-color:#3ee6b066}.btn--outline:hover{background:var(--accent-dim)}.btn--accent{background:#3ee6b033;color:var(--accent);border:1px solid rgba(62,230,176,.35)}.btn--accent:hover:not(:disabled){background:#3ee6b04d}.btn--accent:disabled{opacity:.45;cursor:not-allowed}.btn--lg{padding:.75rem 1.35rem;font-size:1rem}.hero{max-width:var(--max);margin:0 auto;padding:3.5rem 1.5rem 4rem}.hero__grid{display:grid;gap:2.5rem;align-items:start}@media (min-width: 900px){.hero__grid{grid-template-columns:1.2fr .8fr}}.hero__eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 1rem}.hero__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.85rem);font-weight:800;line-height:1.15;margin:0 0 1.25rem;letter-spacing:-.02em}.hero__lead{font-size:1.1rem;color:var(--muted);margin:0 0 1.75rem;max-width:52ch}.hero__lead strong{color:var(--text)}.hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem}.hero__bullets{margin:0;padding-left:1.25rem;color:var(--muted);font-size:.95rem;max-width:52ch}.hero__bullets li{margin-bottom:.5rem}.hero__card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem 1.75rem;box-shadow:0 24px 48px #00000059}.hero__card-title{font-family:var(--font-display);font-size:1.15rem;margin:0 0 .75rem;color:var(--violet)}.hero__card p{margin:0;font-size:.95rem;color:var(--muted)}.hero__card a{color:var(--accent)}.section{padding:3.5rem 1.5rem}.section--alt{background:#ffffff05;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.section__inner{max-width:var(--max);margin:0 auto}.section__inner--narrow{max-width:720px}.section__title{font-family:var(--font-display);font-size:clamp(1.65rem,3vw,2rem);font-weight:700;margin:0 0 .75rem;letter-spacing:-.02em}.section__intro{margin:0 0 2rem;color:var(--muted);font-size:1.05rem;max-width:65ch}.feature-grid{display:grid;gap:1.25rem}@media (min-width: 640px){.feature-grid{grid-template-columns:repeat(2,1fr)}}.feature-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:border-color .2s,transform .2s}.feature-card:hover{border-color:#3ee6b040;transform:translateY(-2px)}.feature-card__title{font-family:var(--font-display);font-size:1.1rem;margin:0 0 .5rem;color:var(--text)}.feature-card p{margin:0;font-size:.95rem;color:var(--muted)}.code-block{position:relative;background:#0a0d11;border:1px solid var(--border);border-radius:10px;padding:1rem 4rem 1rem 1.25rem;margin:0 0 1rem}.code-block pre{margin:0;overflow-x:auto}.code-block code{font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.95rem;color:var(--accent)}.code-block__copy{position:absolute;top:.65rem;right:.65rem;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);color:var(--muted);cursor:pointer;font-family:inherit}.code-block__copy:hover{color:var(--text)}.sample-block{margin-bottom:2rem}.sample-block__title{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.sample-block__pre{margin:0;padding:1.25rem;background:#0a0d11;border:1px solid var(--border);border-radius:10px;overflow-x:auto;font-size:.82rem;line-height:1.5}.sample-block__pre code{font-family:ui-monospace,Cascadia Code,Menlo,monospace;color:#cbd5e1}.demo-panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.demo-panel__row{margin-bottom:1rem}.demo-panel__preview{margin:1rem 0;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:#0a0d11;min-height:120px}.demo-panel__controls{margin-top:1rem}.file-input{display:inline-flex;flex-direction:column;gap:.35rem;cursor:pointer}.file-input__label{font-size:.85rem;font-weight:600;color:var(--muted)}.file-input__input{font-size:.9rem;color:var(--text)}.preview-image{display:block;max-width:100%;height:auto}.controls{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center}.controls label{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9rem;color:var(--muted)}.controls select{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;font-family:inherit}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--muted);font-size:.9rem}.event-info{margin-top:1rem;font-size:.9rem;color:var(--accent);font-family:ui-monospace,monospace}.loading-spinner{padding:1.25rem;text-align:center;color:var(--muted);background:#00000040;border-radius:8px}.error{color:#fca5a5;margin-top:.75rem;padding:.75rem 1rem;background:#ef44441f;border-radius:8px;border:1px solid rgba(239,68,68,.25)}.file-info{margin-top:1rem;padding:1rem;background:var(--bg-card);border-radius:8px;border:1px solid var(--border);font-size:.9rem}.file-info p{margin:.35rem 0;color:var(--muted)}.file-info strong{color:var(--text)}.faq{margin:0}.faq__item{margin-bottom:1.75rem;padding-bottom:1.75rem;border-bottom:1px solid var(--border)}.faq__item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.faq__q{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.faq__a{margin:0;color:var(--muted);font-size:.98rem}.muted{color:var(--muted);font-size:.9rem}code{font-family:ui-monospace,Menlo,monospace;font-size:.88em;background:#ffffff0f;padding:.15em .4em;border-radius:4px}.site-footer{border-top:1px solid var(--border);padding:2.5rem 1.5rem;text-align:center;color:var(--muted);font-size:.9rem}.site-footer__inner{max-width:var(--max);margin:0 auto}.site-footer a{color:var(--accent);text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer p{margin:.35rem 0}
