:root{--space-1: .4rem;--space-2: .8rem;--space-3: 1.2rem;--space-4: 1.6rem;--space-5: 2.4rem;--space-6: 3.2rem;--space-8: 4.8rem;--space-10: 6.4rem;--space-12: 9.6rem;--text-xs: 1.2rem;--text-sm: 1.35rem;--text-base: 1.6rem;--text-lg: clamp(1.8rem, 1.6rem + .5vw, 2rem);--text-xl: clamp(2rem, 1.7rem + .9vw, 2.5rem);--text-2xl: clamp(2.4rem, 2rem + 1.4vw, 3.2rem);--text-3xl: clamp(3rem, 2.4rem + 2vw, 4rem);--shadow-1: 0 1px 3px rgba(0, 0, 0, .12);--shadow-2: 0 4px 14px rgba(0, 0, 0, .16);--shadow-3: 0 12px 34px rgba(0, 0, 0, .22)}:root{--duration-fast: .15s;--duration-base: .3s;--duration-slow: .6s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}.mb-8{margin-bottom:8rem!important}.load-hidden{visibility:hidden}.sr .sr__child{transition-property:opacity,transform,filter,clip-path;transition-timing-function:cubic-bezier(.16,1,.3,1)}.sr--fade-up{opacity:0;transform:translateY(30px);transition:opacity .5s ease-out,transform .5s ease-out}.sr--fade-up.sr-visible{opacity:1;transform:translateY(0)}.sr--fade-up .sr__child{opacity:0;transform:translateY(30px);transition-duration:.5s}.sr--fade-up.sr-visible .sr__child{opacity:1;transform:translateY(0)}.sr--clip{clip-path:inset(100% 0 0 0);transition:clip-path .6s cubic-bezier(.16,1,.3,1)}.sr--clip.sr-visible{clip-path:inset(0 0 0 0)}.sr--clip .sr__child{clip-path:inset(100% 0 0 0);transition-duration:.6s}.sr--clip.sr-visible .sr__child{clip-path:inset(0 0 0 0)}.sr--blur{opacity:0;filter:blur(12px);transition:opacity .5s ease-out,filter .5s ease-out}.sr--blur.sr-visible{opacity:1;filter:blur(0)}.sr--blur .sr__child{opacity:0;filter:blur(12px);transition-duration:.5s}.sr--blur.sr-visible .sr__child{opacity:1;filter:blur(0)}.sr--scale{opacity:0;transform:scale(.92);transition:opacity .45s ease-out,transform .45s cubic-bezier(.34,1.56,.64,1)}.sr--scale.sr-visible{opacity:1;transform:scale(1)}.sr--scale .sr__child{opacity:0;transform:scale(.92);transition-duration:.45s;transition-timing-function:ease-out,cubic-bezier(.34,1.56,.64,1)}.sr--scale.sr-visible .sr__child{opacity:1;transform:scale(1)}.sr--slide-right{opacity:0;transform:translate(-40px);transition:opacity .5s ease-out,transform .5s ease-out}.sr--slide-right.sr-visible{opacity:1;transform:translate(0)}.sr--slide-right .sr__child{opacity:0;transform:translate(-40px);transition-duration:.5s}.sr--slide-right.sr-visible .sr__child{opacity:1;transform:translate(0)}@media(prefers-reduced-motion:reduce){.sr--fade-up,.sr--clip,.sr--blur,.sr--scale,.sr--slide-right,.sr--slide-left,.sr .sr__child{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important}}.sr--slide-left{opacity:0;transform:translate(40px);transition:opacity .5s ease-out,transform .5s ease-out}.sr--slide-left.sr-visible{opacity:1;transform:translate(0)}.sr--slide-left .sr__child{opacity:0;transform:translate(40px);transition-duration:.5s}.sr--slide-left.sr-visible .sr__child{opacity:1;transform:translate(0)}.vision-page{display:flex;flex-direction:column;gap:2rem}.vision-examples{display:flex;flex-direction:column;gap:1rem;color:var(--text-primary)}.vision-examples__title{margin:0;font-size:1.6rem;font-weight:700}.vision-examples__hint{font-weight:400;color:var(--text-secondary);font-size:1.4rem}.vision-examples__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}@media(max-width:640px){.vision-examples__grid{grid-template-columns:1fr}}.vision-examples__card{position:relative;padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:var(--card-bg);cursor:pointer;aspect-ratio:4/3;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.vision-examples__card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.vision-examples__card:hover{transform:translateY(-2px);border-color:#02aab080;box-shadow:0 8px 24px #0000001f}.vision-examples__card:hover img{transform:scale(1.04)}.vision-examples__card:disabled{opacity:.6;cursor:progress}.vision-examples__label{position:absolute;bottom:.8rem;left:.8rem;padding:.4rem 1rem;background:#000000b3;backdrop-filter:blur(6px);color:#fff;font-size:1.15rem;font-weight:700;border-radius:999px;letter-spacing:.02em}.vision-label{font-size:1.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:-.5rem}.vision-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;min-height:22rem;padding:2rem 1.4rem;border:2px dashed var(--card-border);border-radius:12px;background:#02aab00a;cursor:pointer;text-align:center;color:var(--text-primary);overflow:hidden;transition:border-color .15s,background .15s,transform .1s}.vision-drop:hover{border-color:#02aab0;background:#02aab014}.vision-drop__icon{font-size:3.2rem;opacity:.7}.vision-drop__main{font-size:1.5rem;font-weight:700}.vision-drop__sub{font-size:1.2rem;color:var(--text-secondary)}.vision-drop__preview{max-width:100%;max-height:32rem;border-radius:10px;border:1px solid var(--card-border);object-fit:contain}.vision-starters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:-.25rem}.vision-starters__label{font-size:1.25rem;color:var(--text-secondary);margin-right:.4rem}.vision-starters__chip{padding:.5rem 1.1rem;background:transparent;border:1.5px solid var(--card-border);border-radius:999px;font-size:1.2rem;cursor:pointer;color:var(--text-primary);transition:background .15s,border-color .15s,color .15s}.vision-starters__chip:hover{background:#02aab00f;border-color:#02aab0;color:var(--color-primary-text)}.vision-starters__chip.is-active{background:#02aab01f;border-color:#02aab0;color:var(--color-primary-text);font-weight:600}.vision-ask{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1.3rem 2.4rem;border:none;border-radius:10px;background:linear-gradient(135deg,#02aab0,#00cdac);color:#fff;font-size:1.6rem;font-weight:700;cursor:pointer;box-shadow:0 6px 18px #02aab047;transition:transform .15s,box-shadow .15s,opacity .15s;align-self:flex-start}.vision-ask:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.vision-ask:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 26px #02aab066}.vision-ask__spinner{width:1.8rem;height:1.8rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:vision-spin .8s linear infinite}@keyframes vision-spin{to{transform:rotate(360deg)}}.vision-placeholder{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;padding:3rem 1.4rem;border:1.5px dashed var(--card-border);border-radius:12px;background:#02aab00a;text-align:center;min-height:20rem;overflow:hidden;color:var(--text-primary)}.vision-placeholder__icon{font-size:3rem;opacity:.55}.vision-placeholder__text{margin:0;font-size:1.5rem;font-weight:600}.vision-placeholder__sub{margin:0;font-size:1.2rem;color:var(--text-secondary);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.vision-placeholder.is-loading{border-style:solid;border-color:#02aab059}.vision-placeholder__shimmer{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(2,170,176,.14) 50%,transparent 70%);animation:vision-shimmer 1.6s infinite linear;background-size:200% 100%}@keyframes vision-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.vision-result{display:flex;flex-direction:column;gap:1rem;padding:1.6rem 1.7rem;border-radius:12px;background:#02aab00a;border:1px solid rgba(2,170,176,.2);color:var(--text-primary)}.vision-result__label{margin:0;font-size:1.15rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--color-primary-text)}.vision-result__text{margin:0;font-size:1.6rem;font-weight:500;line-height:1.55;color:var(--text-primary);white-space:pre-wrap}.vision-result__actions{display:flex;gap:.75rem;flex-wrap:wrap}.vision-result__btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.3rem;border-radius:999px;border:1.5px solid var(--card-border);background:transparent;color:var(--text-primary);font-size:1.25rem;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.vision-result__btn:hover{border-color:#02aab0;color:var(--color-primary-text);background:#02aab00f}.vision-result__btn:disabled{opacity:.5;cursor:not-allowed}
