:root{--color-bg: #ffffff;--color-surface: #f5f5f5;--color-surface-2: #eeeeee;--color-border: #d0d0d0;--color-text: #111111;--color-text-muted: #666666;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--color-primary: var(--color-accent);--color-danger: #b91c1c;--color-success: #15803d;--color-warning: #a16207;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font-sans: "DM Sans", system-ui, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-field: var(--font-size-md);--font-size-lg: 20px;--font-size-xl: 28px;--font-size-hero: 40px;--touch-min: 44px;--vyra-scroll-inset: 20px;--frame-width: 390px;--frame-height: 844px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box}html{touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;padding:0;min-height:100%;font-family:var(--font-sans);color:var(--color-text);background:#e8e8e8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input:not([type=button]):not([type=submit]):not([type=reset]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]),textarea,select,.signup-card input,.signup-card textarea,.signup-card select,.signup-card .cl-formFieldInput{font-size:var(--font-size-field)}body{min-height:100dvh}.agreements-body,.plans-body,.add-flat-body,.guidelines-body,.review-body,.define-body,.orient-body,.quality-body,.prepare-body,.hub-body,.create-body,.how-body,.library-body,.profile-body,.profile-edit-body,.profile-visitor-body,.project-detail-body,.signup-content,.ready-body,.publish-body,.share-body,.notifications-body,.activation-about-body,.activation-info-scroll-body{--vyra-scrollbar-thumb: #2664eb;scrollbar-width:thin;scrollbar-color:var(--vyra-scrollbar-thumb) transparent}.agreements-body::-webkit-scrollbar,.plans-body::-webkit-scrollbar,.add-flat-body::-webkit-scrollbar,.guidelines-body::-webkit-scrollbar,.review-body::-webkit-scrollbar,.define-body::-webkit-scrollbar,.orient-body::-webkit-scrollbar,.quality-body::-webkit-scrollbar,.prepare-body::-webkit-scrollbar,.hub-body::-webkit-scrollbar,.create-body::-webkit-scrollbar,.how-body::-webkit-scrollbar,.library-body::-webkit-scrollbar,.profile-body::-webkit-scrollbar,.profile-edit-body::-webkit-scrollbar,.profile-visitor-body::-webkit-scrollbar,.project-detail-body::-webkit-scrollbar,.signup-content::-webkit-scrollbar,.ready-body::-webkit-scrollbar,.publish-body::-webkit-scrollbar,.share-body::-webkit-scrollbar,.notifications-body::-webkit-scrollbar,.activation-about-body::-webkit-scrollbar,.activation-info-scroll-body::-webkit-scrollbar{width:6px}.agreements-body::-webkit-scrollbar-track,.plans-body::-webkit-scrollbar-track,.add-flat-body::-webkit-scrollbar-track,.guidelines-body::-webkit-scrollbar-track,.review-body::-webkit-scrollbar-track,.define-body::-webkit-scrollbar-track,.orient-body::-webkit-scrollbar-track,.quality-body::-webkit-scrollbar-track,.prepare-body::-webkit-scrollbar-track,.hub-body::-webkit-scrollbar-track,.create-body::-webkit-scrollbar-track,.how-body::-webkit-scrollbar-track,.library-body::-webkit-scrollbar-track,.profile-body::-webkit-scrollbar-track,.profile-edit-body::-webkit-scrollbar-track,.profile-visitor-body::-webkit-scrollbar-track,.project-detail-body::-webkit-scrollbar-track,.signup-content::-webkit-scrollbar-track,.ready-body::-webkit-scrollbar-track,.publish-body::-webkit-scrollbar-track,.share-body::-webkit-scrollbar-track,.notifications-body::-webkit-scrollbar-track,.activation-about-body::-webkit-scrollbar-track,.activation-info-scroll-body::-webkit-scrollbar-track{background:transparent}.agreements-body::-webkit-scrollbar-thumb,.plans-body::-webkit-scrollbar-thumb,.add-flat-body::-webkit-scrollbar-thumb,.guidelines-body::-webkit-scrollbar-thumb,.review-body::-webkit-scrollbar-thumb,.define-body::-webkit-scrollbar-thumb,.orient-body::-webkit-scrollbar-thumb,.quality-body::-webkit-scrollbar-thumb,.prepare-body::-webkit-scrollbar-thumb,.hub-body::-webkit-scrollbar-thumb,.create-body::-webkit-scrollbar-thumb,.how-body::-webkit-scrollbar-thumb,.library-body::-webkit-scrollbar-thumb,.profile-body::-webkit-scrollbar-thumb,.profile-edit-body::-webkit-scrollbar-thumb,.profile-visitor-body::-webkit-scrollbar-thumb,.project-detail-body::-webkit-scrollbar-thumb,.signup-content::-webkit-scrollbar-thumb,.ready-body::-webkit-scrollbar-thumb,.publish-body::-webkit-scrollbar-thumb,.share-body::-webkit-scrollbar-thumb,.notifications-body::-webkit-scrollbar-thumb,.activation-about-body::-webkit-scrollbar-thumb,.activation-info-scroll-body::-webkit-scrollbar-thumb{background:var(--vyra-scrollbar-thumb);border-radius:999px}.agreements-body,.plans-body,.add-flat-body,.guidelines-body,.quality-body,.prepare-body,.hub-body,.discover-body,.profile-body,.profile-edit-body,.profile-visitor-body,.project-detail-body,.ready-body,.publish-body,.share-body,.notifications-body{align-self:flex-start;box-sizing:border-box;width:calc(100% - var(--vyra-scroll-inset));margin-left:var(--vyra-scroll-inset);margin-right:0;padding-left:0;padding-right:var(--vyra-scroll-inset)}button,input,textarea,select,label,option{font-family:var(--font-sans);line-height:inherit}button,input[type=button],input[type=submit],input[type=reset],[role=button],label.btn,label.cam-upload,a.btn{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}button,input[type=button],input[type=submit],input[type=reset],[role=button],label.btn,label.cam-upload{-webkit-appearance:none;-moz-appearance:none;appearance:none}button::-moz-focus-inner,input[type=button]::-moz-focus-inner,input[type=submit]::-moz-focus-inner,input[type=reset]::-moz-focus-inner{border:0;padding:0}button:focus:not(:focus-visible),button:active,input[type=button]:focus:not(:focus-visible),input[type=button]:active,input[type=submit]:focus:not(:focus-visible),input[type=submit]:active,input[type=reset]:focus:not(:focus-visible),input[type=reset]:active,[role=button]:focus:not(:focus-visible),[role=button]:active,label.btn:focus:not(:focus-visible),label.btn:active,label.cam-upload:focus:not(:focus-visible),label.cam-upload:active,a.btn:focus:not(:focus-visible),a.btn:active{outline:none}button svg,[role=button] svg,label.btn svg,label.cam-upload svg,a.btn svg{pointer-events:none;-webkit-tap-highlight-color:transparent}@media(hover:none)and (pointer:coarse){button:focus,button:focus-visible,button:active,input[type=button]:focus,input[type=button]:focus-visible,input[type=button]:active,input[type=submit]:focus,input[type=submit]:focus-visible,input[type=submit]:active,input[type=reset]:focus,input[type=reset]:focus-visible,input[type=reset]:active,[role=button]:focus,[role=button]:focus-visible,[role=button]:active,label.btn:focus,label.btn:focus-visible,label.btn:active,label.cam-upload:focus,label.cam-upload:focus-visible,label.cam-upload:active,a.btn:focus,a.btn:focus-visible,a.btn:active,.btn:focus,.btn:focus-visible,.btn:active{outline:none!important}}#app,.phone-frame,.screen{font-family:var(--font-sans)}#app{min-height:100dvh;display:flex;align-items:stretch;justify-content:center}.workspace{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:linear-gradient(180deg,#ececec,#e2e2e2)}.phone-frame{width:min(100%,var(--frame-width));max-width:100%;min-width:0;height:min(100dvh - 32px,var(--frame-height));background:var(--color-bg);border:1px solid #cfcfcf;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:0 12px 40px #00000014}@media(max-width:767px){.workspace{padding:0;background:var(--color-bg)}.phone-frame{width:100%;max-width:100%;height:100dvh;border:none;border-radius:0;box-shadow:none}}.screen-render-root{display:contents}.screen{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;width:100%;max-width:100%;padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) calc(var(--space-4) + var(--safe-bottom));overflow:auto}.screen-ar{position:relative;padding:0;background:transparent;overflow:hidden;pointer-events:none}.screen-ar .ar-top-bar,.screen-ar .ar-controls,.screen-ar .ar-hud,.screen-ar .app-header,.screen-ar .preview-actions,.screen-ar .preview-tap-to-play,.screen-ar .viewer-capture-chrome .cam-shutter,.screen-ar .activation-create-cta,.screen-ar .activation-end-card-host.is-open{pointer-events:auto}body.vyra-xr-active{background:#000}body.vyra-xr-active #app,body.vyra-xr-active .workspace,body.vyra-xr-active .phone-frame,body.vyra-xr-active .preview-splash{background:transparent}body.vyra-xr-active .phone-frame{border-color:transparent;box-shadow:none}.ar-stage{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;pointer-events:none}.ar-stage video{position:absolute!important;z-index:0!important;pointer-events:none}.vyra-ar-overlay-video{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;z-index:-1!important;left:0!important;top:0!important}#vyra-xr-canvas,canvas.vyra-xr-canvas{position:absolute!important;top:0!important;left:0!important;z-index:1!important;background:transparent!important;pointer-events:none;display:block!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important}.ar-stage canvas:not(.vyra-xr-canvas){position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;z-index:1!important;background:transparent!important;pointer-events:none}.screen-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.screen-header-actions{display:flex;align-items:center;gap:var(--space-2)}.screen-header-home{margin-bottom:var(--space-2);min-height:var(--touch-min)}.screen-header-spacer{flex:1}.account-chip{display:flex;align-items:center;justify-content:flex-end;min-height:var(--touch-min)}.account-chip-muted{font-size:var(--font-size-sm);color:var(--color-text-muted)}.account-user-button{display:flex;align-items:center}.account-sign-in{font-size:var(--font-size-sm)}.projects-auth-note{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.projects-auth-note .muted{margin:0}.project-item-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.project-kind{flex-shrink:0;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.project-kind-published{color:var(--color-success)}.project-kind-autosave{color:var(--color-warning)}.project-kind-draft{color:var(--color-accent)}.brand-hero{font-size:var(--font-size-hero);font-weight:700;letter-spacing:-.03em;margin:0;line-height:1.05}.eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 var(--space-2)}.lede{font-size:var(--font-size-md);color:var(--color-text-muted);line-height:1.45;margin:var(--space-3) 0 var(--space-5)}h1,h2,h3{margin:0 0 var(--space-2);line-height:1.2}h1{font-size:var(--font-size-xl)}h2{font-size:var(--font-size-lg)}p{margin:0 0 var(--space-3);line-height:1.45}.muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.stack-lg{gap:var(--space-5)}.row{display:flex;gap:var(--space-2);flex-wrap:wrap}.spacer{flex:1}.btn{min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:var(--font-sans);font-weight:600;font-size:var(--font-size-md);line-height:1.25;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:background .15s ease,border-color .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn:focus:not(:focus-visible),.btn:active{outline:none}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-secondary{background:var(--color-bg);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface)}.btn-ghost{background:transparent;color:var(--color-text);border-color:transparent}.btn-danger{background:var(--color-danger);color:#fff}.btn-block{width:100%}.actions-bottom{margin-top:auto;padding-top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.screen-home .actions-bottom{margin-top:var(--space-5);padding-top:0}.screen-home .poc-label{margin-top:var(--space-4)}.screen-capture .actions-bottom{margin-top:var(--space-4);padding-top:0}.screen-capture [data-testid=capture-preview][hidden],.add-flat-preview[hidden]{display:none!important;margin:0;padding:0;height:0;overflow:hidden}.add-flat-continue[hidden]{display:none!important}.status-banner{padding:var(--space-3);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:500;line-height:1.35;border:1px solid var(--color-border);background:var(--color-surface)}.status-banner-message{margin:0}.status-banner-action{display:inline-block;margin-top:var(--space-2);padding:0;border:0;background:none;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;color:inherit}.status-banner-action:hover{opacity:.85}.status-warning{border-color:#f0d28a;background:#fff8e8;color:var(--color-warning)}.status-danger{border-color:#f0b4b4;background:#fff1f1;color:var(--color-danger)}.status-success{border-color:#b7e0c2;background:#f0faf3;color:var(--color-success)}.status-info{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}.offline-bar{position:absolute;top:0;left:0;right:0;z-index:20;padding:var(--space-2) var(--space-3);background:#111;color:#fff;font-size:var(--font-size-xs);text-align:center}.image-preview{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center}.image-preview-img{width:100%;height:100%;object-fit:contain;display:block}.image-preview-empty{color:var(--color-text-muted);font-size:var(--font-size-sm)}.rating-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.rating-strong{background:#dcfce7;color:var(--color-success)}.rating-usable{background:#fef3c7;color:var(--color-warning)}.rating-weak{background:#fee2e2;color:var(--color-danger)}.field-label{display:block;font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--space-1)}.text-input,.text-area,.select-input{width:100%;min-height:var(--touch-min);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);font:inherit;font-size:var(--font-size-field);background:var(--color-bg)}.text-area{min-height:120px;resize:vertical}.text-input:focus-visible,.text-area:focus-visible,.select-input:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.guidance-list{margin:0;padding-left:1.1rem;color:var(--color-text-muted);font-size:var(--font-size-sm)}.guidance-list li{margin-bottom:var(--space-1)}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.metric-card strong{display:block;font-size:var(--font-size-sm)}.metric-card span{font-size:var(--font-size-xs);color:var(--color-text-muted)}.step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.step-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.step-index{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:700;background:#fff;border:1px solid var(--color-border)}.step-active{border-color:var(--color-accent);background:#eff6ff}.step-active .step-index{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.step-done{opacity:.85}.step-done .step-index{background:var(--color-success);color:#fff;border-color:var(--color-success)}.progress-wrap{display:flex;flex-direction:column;gap:var(--space-2)}.progress-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.progress-label{flex:1;min-width:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.progress-percent{flex:0 0 auto;font-size:var(--font-size-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text)}.progress-track{height:8px;border-radius:999px;background:var(--color-surface-2);overflow:hidden;position:relative}.progress-track--busy:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,transparent 0%,rgba(37,99,235,.12) 40%,rgba(37,99,235,.22) 50%,rgba(37,99,235,.12) 60%,transparent 100%);background-size:220% 100%;animation:progress-track-shimmer 1.8s ease-in-out infinite;pointer-events:none;z-index:0}.progress-fill{height:100%;background:var(--color-accent);border-radius:inherit;transition:width .2s ease;position:relative;z-index:1;overflow:hidden}.progress-fill--busy{background-image:linear-gradient(90deg,var(--color-accent) 0%,#60a5fa 45%,#93c5fd 50%,#60a5fa 55%,var(--color-accent) 100%);background-size:200% 100%;animation:progress-fill-shimmer 1.6s ease-in-out infinite}@keyframes progress-track-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes progress-fill-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.progress-track--busy:before,.progress-fill--busy{animation:none}.progress-fill--busy{background-image:none;background-color:var(--color-accent)}}.check-list{list-style:none;margin:0;padding:0}.check-list li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.check-ok{color:var(--color-success);font-weight:600}.check-bad{color:var(--color-danger);font-weight:600}.poc-label{display:inline-block;margin-top:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:999px;padding:4px 10px}.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.projects-flash{display:flex;flex-direction:column;gap:var(--space-2)}.project-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface);width:100%;display:flex;flex-direction:column;gap:var(--space-2)}button.project-item{cursor:pointer;text-align:left;font:inherit}button.project-item:focus-visible{outline:2px solid var(--color-accent)}.project-item-open{border:none;background:transparent;cursor:pointer;text-align:left;width:100%;font:inherit;padding:0;color:inherit}.project-item-open:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.project-item-actions{display:flex;flex-wrap:wrap;gap:var(--space-1)}.btn-compact{min-height:36px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.ar-hud{position:absolute;left:var(--space-4);right:var(--space-4);top:calc(var(--space-4) + var(--safe-top) + 52px);z-index:10;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.ar-top-bar{position:absolute;left:var(--space-4);right:var(--space-4);top:calc(var(--space-4) + var(--safe-top));z-index:11;display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);pointer-events:auto}.ar-back-btn{background:#ffffffeb!important;box-shadow:0 2px 10px #00000040}.ar-chip{align-self:flex-start;background:#000000b3;color:#fff;padding:8px 12px;border-radius:999px;font-size:var(--font-size-sm);font-weight:600}.ar-controls{position:absolute;left:var(--space-4);right:var(--space-4);bottom:calc(var(--space-4) + var(--safe-bottom));z-index:10;display:flex;gap:var(--space-2);pointer-events:auto}.preview-splash{position:relative;padding:0!important;overflow:hidden;background:#111827;display:block}.preview-splash .app-header,.preview-splash .preview-header-spacer{position:absolute;top:0;left:0;right:0;z-index:5;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:auto}.preview-splash .app-header:before{content:"";position:absolute;left:0;right:0;top:0;height:calc(var(--safe-top) + 65px);z-index:-1;pointer-events:none;background:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 2px 12px #00000014}.viewer-ar .app-header:before,.create-preview-ar .app-header:before{height:calc(var(--safe-top) + 118px);background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 2px 12px #00000014}.activation-info-splash .app-header:before{display:none}.preview-splash .app-header-screen-title{z-index:1;color:#111;text-shadow:0 1px 2px rgba(255,255,255,.85);max-width:min(200px,calc(100% - 120px))}.preview-instruction{position:absolute;left:32px;right:32px;bottom:calc(148px + var(--safe-bottom));z-index:6;width:auto;max-width:none;padding:10px 14px;border-radius:16px;background:#ffffffeb;box-shadow:0 2px 10px #0000001f;color:#111;font-family:var(--font-sans);font-size:13px;font-weight:600;line-height:1.35;text-align:center;box-sizing:border-box;pointer-events:none}.preview-tap-to-play{position:absolute;left:50%;bottom:calc(210px + var(--safe-bottom));z-index:7;transform:translate(-50%);min-width:168px;min-height:52px;padding:0 28px;margin:0;border:none;border-radius:999px;background:var(--color-accent);color:#fff;box-shadow:0 4px 16px #2563eb66;font-family:var(--font-sans);font-size:16px;font-weight:700;line-height:1;pointer-events:auto;cursor:pointer}.preview-tap-to-play[hidden]{display:none!important}.viewer-ar button:focus,.viewer-ar button:focus-visible,.viewer-ar button:active,.viewer-ar .viewer-gallery-cell:focus,.viewer-ar .viewer-gallery-cell:focus-visible,.viewer-ar .viewer-gallery-cell:active{outline:none!important;box-shadow:none;-webkit-tap-highlight-color:transparent}.viewer-ar .preview-instruction,.create-preview-ar .preview-instruction{display:none!important}.viewer-ar .cam-guide-host,.create-preview-ar .cam-guide-host{z-index:4;pointer-events:none}.viewer-ar .viewer-tip-host,.create-preview-ar .preview-tip-host{position:absolute;top:calc(var(--safe-top) + 138px);left:0;right:0;z-index:7;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 20px 6px;box-sizing:border-box;pointer-events:none}.viewer-ar .preview-tap-to-play{bottom:calc(182px + var(--safe-bottom));display:inline-flex;align-items:center;justify-content:center;min-width:auto;width:auto;max-width:calc(100% - 64px);min-height:0;height:auto;padding:8px 14px;font-size:12px;font-weight:600;line-height:1.2;border-radius:999px;box-shadow:0 2px 10px #2563eb59}.viewer-ar .cam-controls.viewer-capture-controls{bottom:calc(48px + var(--safe-bottom))}.viewer-ar.activation-ar .app-header{z-index:18}.viewer-ar.activation-ar .cam-controls.viewer-capture-controls{bottom:calc(56px + var(--safe-bottom))}.activation-create-cta{position:absolute;left:0;right:0;bottom:0;z-index:8;display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(48px + var(--safe-bottom));margin:0;padding:10px 20px calc(10px + var(--safe-bottom));border:none;background:#fff;box-sizing:border-box;color:var(--color-accent);font-family:var(--font-sans);font-size:15px;font-weight:600;line-height:1.3;text-align:center;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.activation-create-cta:focus,.activation-create-cta:focus-visible,.activation-create-cta:active{outline:none;background:#fff}.activation-end-card-host{position:absolute;top:0;right:0;bottom:0;left:0;z-index:16;display:flex;align-items:flex-end;pointer-events:none}.activation-end-card-host[hidden]{display:none!important}.activation-end-card-host.is-open{pointer-events:auto}.activation-end-card{width:100%;padding:12px 24px calc(28px + var(--safe-bottom));border-radius:24px 24px 0 0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);box-shadow:0 -8px 32px #0003;transform:translateY(110%);transition:transform .42s cubic-bezier(.22,1,.36,1);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.activation-end-card-host.is-open .activation-end-card{transform:translateY(0)}.activation-end-card-handle{width:40px;height:4px;border-radius:2px;background:#d0d0d0}.activation-end-card-logo{display:block;width:171px;height:60px;margin:8px 0 0}.activation-end-card-title{margin:0;font-family:var(--font-sans);font-size:22px;font-weight:700;line-height:1.25;color:#111}.activation-end-card-body{margin:0;max-width:320px;font-family:var(--font-sans);font-size:15px;line-height:1.4;color:var(--color-text-muted)}.activation-end-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:8px}.activation-end-card-create{min-height:52px;border-radius:12px;font-size:16px;font-weight:600}.btn.activation-end-card-later,.activation-end-card-later{min-height:52px;border-radius:12px;font-size:16px;font-weight:600;color:var(--color-accent);background:#fff;border-color:#e5e7eb}.activation-menu-host{position:absolute;top:0;right:0;bottom:0;left:0;z-index:22;pointer-events:none}.activation-menu-host[hidden]{display:none!important}.activation-menu-host.is-open{pointer-events:auto}.activation-menu-layer,.activation-info-screen{position:absolute;top:0;right:0;bottom:0;left:0}.activation-menu-layer[hidden],.activation-info-screen[hidden]{display:none!important;pointer-events:none!important}.activation-menu-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:none;background:#1118276b;opacity:0;transition:opacity .28s ease;cursor:pointer}.activation-menu-host.is-open .activation-menu-backdrop{opacity:1}.activation-menu-layer{z-index:1}.activation-info-screen{z-index:2}.activation-menu-panel{position:absolute;top:0;right:0;bottom:0;width:min(332px,80vw);transform:translate(100%);transition:transform .34s cubic-bezier(.22,1,.36,1);pointer-events:auto}.activation-menu-panel.is-open{transform:translate(0)}.activation-menu-panel-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);border-radius:24px 0 0 24px;box-shadow:-8px 0 32px #0000002e}.activation-menu-panel-inner{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px;height:100%;padding:calc(12px + var(--safe-top)) 20px calc(18px + var(--safe-bottom));box-sizing:border-box}.activation-menu-top{position:relative;display:flex;justify-content:center;align-items:flex-start;min-height:60px}.activation-menu-close{position:absolute;top:0;right:0}.activation-menu-logo{display:block;width:132px;height:auto;margin:0 auto}.activation-creator-card{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border-radius:16px;background:#fff;box-shadow:0 2px 12px #0f172a14}.activation-creator-head{display:flex;align-items:center;gap:12px}.activation-creator-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:14px;font-weight:700;background-size:cover;background-position:center}.activation-creator-avatar.has-photo{color:transparent}.activation-creator-copy{min-width:0}.activation-creator-eyebrow{margin:0;font-size:12px;line-height:1.3;color:#6b7280}.activation-creator-name{margin:2px 0 0;font-size:16px;font-weight:700;line-height:1.25;color:#111827}.activation-creator-meta{margin:4px 0 0;font-size:12px;line-height:1.35;color:#6b7280}.activation-creator-bio{margin:0;font-size:13px;line-height:1.45;color:#374151}.activation-menu-actions{display:flex;flex-direction:column;gap:10px}.activation-menu-action{display:flex;align-items:center;gap:14px;width:100%;min-height:56px;padding:14px 16px;border:none;border-radius:16px;background:#fff;box-shadow:0 2px 12px #0f172a14;color:#111827;font-family:var(--font-sans);font-size:15px;font-weight:600;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.activation-menu-action.is-accent{color:var(--color-accent)}.activation-menu-action-icon{flex:0 0 auto;width:22px;height:22px;color:#111827}.activation-menu-action.is-accent .activation-menu-action-icon{color:var(--color-accent)}.activation-menu-footer{margin:auto 0 0;padding-top:8px;display:flex;align-items:center;justify-content:center}.activation-menu-created-by{display:block;width:115px;height:44px}.activation-info-screen{display:flex;flex-direction:column;height:100%;min-height:0;background:#f3f3f3;pointer-events:auto}.activation-info-screen>.activation-info-splash{flex:1;min-height:0}.activation-info-splash{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden;background:#f3f3f3}.activation-info-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.activation-info-splash>.activation-info-bg{opacity:.55}.activation-info-splash>.app-header{grid-row:1;position:relative;top:auto;left:auto;right:auto;width:100%;z-index:5;flex:0 0 auto;background:transparent}.preview-splash .activation-info-splash>.app-header{position:relative;top:auto;left:auto;right:auto;width:100%}.activation-info-splash>.app-header:after{display:none}.activation-info-scroll-body{grid-row:2;position:relative;z-index:1;min-height:0;box-sizing:border-box;width:100%;margin:0;padding:16px 20px 24px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scroll-padding-top:12px}.activation-info-scroll-body>*{width:100%;max-width:350px;margin-left:auto;margin-right:auto;box-sizing:border-box}.activation-info-footer{grid-row:3;position:relative;z-index:1;flex:0 0 auto;display:flex;flex-direction:column;gap:8px;width:100%;max-width:350px;margin:0 auto;padding:12px 20px calc(12px + var(--safe-bottom));box-sizing:border-box}.activation-about-content{display:flex;flex-direction:column;gap:12px}.activation-how-steps{display:flex;flex-direction:column;gap:8px}.activation-about-experience{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:16px;background:#fff;box-shadow:0 2px 12px #0f172a14}.activation-about-thumb{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;background:#e5e7eb}.activation-about-title{margin:0;font-size:17px;font-weight:700;line-height:1.25;color:#111827}.activation-about-description{margin:0;font-size:14px;line-height:1.45;color:#4b5563}.activation-how-step{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014}.activation-how-step-icon{flex:0 0 40px;display:block;width:40px;height:40px}.activation-how-step-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.activation-how-step-title-row{display:flex;align-items:baseline;gap:4px}.activation-how-step-num{font-size:14px;font-weight:700;line-height:1.25;color:var(--color-accent)}.activation-how-step-title{font-size:14px;font-weight:700;line-height:1.25;color:#111}.activation-how-step-body{margin:0;font-size:12px;line-height:1.35;color:var(--color-text-muted)}.activation-info-continue{width:100%;min-height:52px;border-radius:12px;font-size:16px;font-weight:700}.activation-info-create-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0;padding:8px 12px;border:none;background:transparent;color:var(--color-accent);font-family:var(--font-sans);font-size:15px;font-weight:600;line-height:1.3;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.activation-creator-avatar.is-placeholder{background:#dbeafe;color:#2563eb}.activation-creator-avatar.is-placeholder svg{width:24px;height:24px}.viewer-control-spacer{flex:0 0 44px;width:44px;height:44px;pointer-events:none}.viewer-capture-chrome{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.viewer-capture-chrome>*{pointer-events:auto}.viewer-rec-pill{position:absolute;top:calc(var(--safe-top) + 118px);left:50%;transform:translate(-50%);z-index:7;display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:6px 14px;border-radius:999px;background:#111827b8;color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:700;letter-spacing:.02em;box-shadow:0 2px 10px #0003}.viewer-rec-pill[hidden]{display:none!important}.viewer-rec-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 2px #ef444459}.viewer-capture-controls{pointer-events:auto}.viewer-shutter{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.viewer-gallery-sheet{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;padding:0 0 calc(12px + var(--safe-bottom));background:#00000073;pointer-events:auto}.viewer-gallery-sheet[hidden]{display:none!important}.viewer-gallery-sheet-panel{width:calc(100% - 32px);max-width:360px;max-height:min(62vh,520px);padding:16px;border-radius:20px;background:#fffffffa;box-shadow:0 8px 32px #0000002e;overflow:auto}.viewer-gallery-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.viewer-gallery-sheet-head h2{margin:0;font-family:var(--font-sans);font-size:16px;font-weight:700;color:#111}.viewer-gallery-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;border-radius:18px;background:#f3f4f6;color:#111;cursor:pointer}.viewer-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.viewer-gallery-cell{aspect-ratio:1;padding:0;border:2px solid #ffffff;border-radius:10px;overflow:hidden;background:#111827;cursor:pointer}.viewer-gallery-cell img,.viewer-gallery-cell video{display:block;width:100%;height:100%;object-fit:cover}.viewer-gallery-sheet-hint{margin:12px 0 0;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:#6b7280;text-align:center}.viewer-capture-controls.is-recording .viewer-gallery{visibility:hidden;pointer-events:none}.viewer-shutter .viewer-shutter-stop{display:none}.viewer-shutter.is-recording{box-shadow:0 0 0 3px #ef4444}.viewer-shutter.is-recording .cam-shutter-inner{display:none}.viewer-shutter.is-recording .viewer-shutter-stop{display:block;width:24px;height:24px;border-radius:6px;background:#ef4444}.viewer-stop-hint{position:absolute;left:0;right:0;bottom:calc(16px + var(--safe-bottom));z-index:7;color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:600;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.45);pointer-events:none}.viewer-stop-hint[hidden]{display:none!important}.viewer-ar .app-header-screen-title{max-width:min(240px,calc(100% - 120px));text-shadow:none}.preview-actions{position:absolute;left:0;right:0;bottom:0;z-index:6;display:flex;flex-direction:column;gap:10px;width:100%;max-width:100%;padding:0 20px calc(20px + var(--safe-bottom));box-sizing:border-box;pointer-events:auto}.preview-actions .btn,.preview-btn-primary,.preview-btn-secondary,.btn.preview-btn-secondary{width:100%;max-width:none;min-height:52px;margin:0;border-radius:14px;box-sizing:border-box;font-family:var(--font-sans);font-size:15px;font-weight:700}.preview-btn-primary{background:var(--color-accent);color:#fff;border:none;box-shadow:0 4px 12px #2563eb59}.preview-btn-secondary,.btn.preview-btn-secondary{border:none;background:#fff;color:#111;box-shadow:0 4px 12px #0000001f}.qr-box{display:flex;justify-content:center;padding:var(--space-3);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.qr-box img{width:220px;height:220px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.toggle-row input{width:20px;height:20px}.hidden-input{display:none}.visually-hidden-input{position:fixed!important;top:0!important;left:0!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}label.btn{display:flex;align-items:center;justify-content:center;cursor:pointer;box-sizing:border-box}.capture-live{position:relative;border-radius:var(--radius-md);overflow:hidden;background:#111;aspect-ratio:3 / 4;max-height:42vh}.capture-live[hidden]{display:none!important}.capture-live-video{display:block;width:100%;height:100%;object-fit:cover}.capture-live-actions{position:absolute;left:0;right:0;bottom:0;padding:var(--space-3);display:grid;gap:var(--space-2);background:linear-gradient(transparent,#000000a6)}.capture-live-actions-static{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.capture-live-hint{margin:0;color:#fff;text-align:center;font-size:var(--font-size-sm)}.corner-editor-host{width:100%}.corner-editor{position:relative;width:100%;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:crosshair}.corner-canvas{display:block;width:100%;max-width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border);touch-action:pan-y;cursor:crosshair}.corner-loupe{position:absolute;width:120px;height:120px;border-radius:50%;border:2px solid var(--color-accent);pointer-events:none;z-index:2;box-shadow:0 4px 16px #00000040}.corner-loupe[hidden]{display:none!important}.corner-order-list{font-size:var(--font-size-sm)}.btn-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.btn-row.wrap .btn{flex:1 1 auto}.muted.tight{margin:0 0 var(--space-3);font-size:var(--font-size-sm)}.composition-preview-host{width:100%}.composition-frame{position:relative;width:100%;max-width:320px;margin:0 auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#111}.composition-tracker-img{display:block;width:100%;height:100%;object-fit:contain;opacity:.55}.composition-content-layer{position:absolute;transform:translate(-50%,-50%);box-sizing:border-box;border:2px solid var(--color-accent);overflow:hidden;background:#00000040}.composition-content-pinned{transform:none;border:none;overflow:visible;background:transparent;pointer-events:none}.composition-content-pinned .composition-content-media{pointer-events:none}.composition-pin-handle{position:absolute;z-index:3;width:22px;height:22px;margin:0;padding:0;border:2px solid #fff;border-radius:50%;background:var(--color-accent);transform:translate(-50%,-50%);cursor:grab;touch-action:none;box-shadow:0 1px 4px #00000059}.composition-pin-handle:active{cursor:grabbing}.composition-opacity-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.composition-opacity-slider{width:100%;accent-color:var(--color-accent)}.composition-content-media{display:block;width:100%;height:100%;object-fit:contain}.composition-content-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:48px;color:#fff;font-size:var(--font-size-sm)}.composition-canvas{display:block;width:100%;max-width:320px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:#f5f5f5}.hub-generate-block{margin-top:0;padding-top:var(--space-2);gap:var(--space-2);display:flex;flex-direction:column}.hub-generate-block .hub-result:not(:empty){margin-top:2px}.hub-progress:empty{display:none}.hub-generate-block .stack:empty{display:none}#hub-duration-field{gap:2px}.hub-duration-heading{margin-bottom:0}.hub-duration-credits{display:flex;align-items:center;gap:6px;margin:0}.hub-duration-credits-icon{flex-shrink:0;color:var(--color-text-muted)}.hub-duration-credits-value{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:500;line-height:1.35;color:var(--color-text-muted)}.hub-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;margin-top:0;margin-bottom:0;padding-top:4px;padding-bottom:12px;overflow:auto}.hub-title-block{display:flex;flex-direction:column;align-items:center;text-align:center}.hub-subtitle{margin:0;max-width:320px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.hub-type-tabs{display:flex;gap:8px;width:100%}.hub-type-tab{flex:1;min-height:40px;padding:0 10px;border:none;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;color:var(--color-text);font-family:var(--font-sans);font-size:13px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.hub-type-tab.is-selected{background:var(--color-accent);color:#fff;box-shadow:none}.hub-type-select{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0}.hub-prompt-card{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014}.hub-prompt-label{font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--color-text)}.hub-prompt-card .text-area,.hub-prompt-card textarea{width:100%;min-height:96px;margin:0;padding:0;border:none;background:transparent;resize:vertical;font-family:var(--font-sans);font-size:var(--font-size-field);line-height:1.45;color:var(--color-text)}.hub-prompt-hint{margin:0;font-family:var(--font-sans);font-size:11px;line-height:1.4;color:var(--color-text-muted)}.hub-polish-btn{min-height:44px;border-radius:12px;border:none;background:#eff6ff;color:var(--color-accent);font-family:var(--font-sans);font-size:13px;font-weight:600;box-shadow:none}.hub-btn-primary{min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.hub-btn-secondary,.btn.hub-btn-secondary{min-height:48px;border-radius:14px;border:none;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:14px;font-weight:700;box-shadow:0 4px 10px #0000001a}.hub-btn-secondary span,.btn.hub-btn-secondary span{color:var(--color-text);font-family:inherit;font-size:inherit;font-weight:inherit}.hub-btn-secondary svg,.btn.hub-btn-secondary svg{color:var(--color-accent)}.hub-result{display:flex;flex-direction:column;gap:10px}.hub-result:empty{display:none}.hub-result-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.hub-result-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:700}.hub-result-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#ecfdf3;color:#15803d;font-family:var(--font-sans);font-size:11px;font-weight:600}.hub-result-preview{overflow:hidden;border-radius:14px;background:#111827;aspect-ratio:1;max-height:min(42vh,280px)}.hub-prompt-hint{display:none!important}.hub-credits-row{display:flex;align-items:baseline;gap:6px;margin:0}.hub-credits-label{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.hub-credits-value{margin:0;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:600;line-height:1.35;color:var(--color-text)}.hub-credits-warning:empty{display:none}.hub-credits-warning .status-banner{display:flex;flex-direction:column;align-items:center;text-align:center}.hub-credits-warning .status-banner-message{width:100%}.hub-credits-warning .status-banner-action{display:inline-block;margin-top:var(--space-2);text-align:center}.hub-actions:empty{display:none}.hub-generating-card-host:not(:empty),.hub-create-another-host:not(:empty),.hub-queue-host:not(:empty){width:100%}.hub-generating-card{display:flex;flex-direction:column;gap:10px;width:100%;padding:14px;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014}.hub-generating-title{margin:0;font-family:var(--font-sans);font-size:15px;font-weight:700;color:var(--color-text)}.hub-generating-copy{margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.45;color:var(--color-text-muted)}.hub-generating-card .progress-wrap{width:100%}.hub-collection-note{margin:8px 0 0;text-align:center;font-size:12px}.hub-queue-title{margin:4px 0 8px;font-family:var(--font-sans);font-size:15px;font-weight:700;color:var(--color-text)}.hub-queue-row{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;background:#fff;box-shadow:0 2px 8px #00000012}.hub-queue-row+.hub-queue-row{margin-top:8px}.hub-queue-row-main{flex:1;min-width:0}.hub-queue-prompt{margin:0;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--color-text)}.hub-queue-status{margin:4px 0 0;font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--color-accent)}.hub-queue-status.is-waiting{color:var(--color-text-muted);font-weight:500}.hub-queue-status.is-failed{color:#dc2626;font-weight:600}.hub-queue-row-progress{margin-top:8px;height:4px;border-radius:999px;background:#e8edf5;overflow:hidden}.hub-queue-row-progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width .35s ease}.hub-queue-cancel{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;padding:6px;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer}.hub-queue-cancel:hover{color:var(--color-danger, #c0392b);background:#c0392b14}.hub-queue-cancel:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.hub-result-media{display:block;width:100%;height:100%;object-fit:contain}.hub-footer-actions{display:flex;flex-direction:column;gap:8px}.hub-editor-actions{display:flex;flex-direction:column;gap:8px;margin-top:0}.hub-seamless{margin-top:4px}.hub-editor:empty{display:none}.hub-editor{display:flex;flex-direction:column;gap:12px;padding:4px 0 0}.hub-editor-header{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.hub-editor-title{margin:0;font-family:var(--font-sans);font-size:18px;font-weight:700;line-height:1.25;text-align:center;color:var(--color-text)}.hub-editor-subtitle{margin:0;max-width:300px;font-family:var(--font-sans);font-size:12px;font-weight:400;line-height:1.35;text-align:center;color:var(--color-text-muted)}.hub-editor-view-tabs,.hub-editor-tools{display:flex;gap:8px;width:100%}.hub-editor-view-tab,.hub-editor-tool{flex:1;min-height:36px;padding:0 8px;border:none;border-radius:10px;background:#fff;box-shadow:0 2px 8px #00000014;color:var(--color-text);font-family:var(--font-sans);font-size:12px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.hub-editor-view-tab.is-selected,.hub-editor-tool.is-selected{background:var(--color-accent);color:#fff;box-shadow:none}.hub-editor-canvas-wrap{display:flex;justify-content:center;width:100%;overflow:hidden}.hub-editor-canvas-wrap .composition-preview-host{width:auto;max-width:100%}.hub-editor-canvas-wrap .composition-frame{width:min(100%,200px);max-width:200px;max-height:min(26vh,200px);margin:0 auto;border-radius:14px;background:#dbeafe;height:auto;overflow:hidden}.hub-editor-canvas-wrap .muted.tight{display:none}.hub-editor-fields{display:flex;flex-direction:column;gap:10px;min-height:0;padding:12px;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;box-sizing:border-box}.hub-editor-xyz,.hub-editor-scale-rotate,.hub-editor-scale-actions{display:flex;flex-wrap:wrap;gap:8px}.hub-editor-nudge{flex:1;min-height:40px;border-radius:10px;border:none;background:#f3f4f6;color:var(--color-text);font-family:var(--font-sans);font-size:12px;font-weight:600;box-shadow:none}.hub-editor-nudge-row{display:flex;flex-wrap:nowrap;gap:8px}.hub-editor-nudge-btn{flex:1 1 0;min-width:0;padding:0}.hub-editor-chip{flex:1 1 calc(50% - 4px);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 10px;border:none;border-radius:10px;background:#f3f4f6;color:var(--color-text);font-family:var(--font-sans);font-size:12px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.hub-editor-chip span,.hub-editor-chip svg{font-family:inherit;font-size:inherit;font-weight:inherit;flex-shrink:0}.hub-editor-chip.is-selected{background:#eff6ff;color:var(--color-accent)}.hub-editor-reset{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:0 14px;border:none;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;color:var(--color-text);font-family:var(--font-sans);font-size:13px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.hub-editor-reset span{font-family:inherit;font-size:inherit;font-weight:inherit}.hub-editor-utils,.hub-editor-advanced{display:none}.composition-content-layer.has-selection{outline:2px solid var(--color-accent);outline-offset:0}.hub-editor-handle{position:absolute;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--color-accent);box-sizing:border-box;pointer-events:none;z-index:2}.hub-editor-handle-tl{left:0;top:0;transform:translate(-50%,-50%)}.hub-editor-handle-tr{right:0;top:0;transform:translate(50%,-50%)}.hub-editor-handle-bl{left:0;bottom:0;transform:translate(-50%,50%)}.hub-editor-handle-br{right:0;bottom:0;transform:translate(50%,50%)}.hub-editor-handle-tm{left:50%;top:0;transform:translate(-50%,-50%)}.hub-editor-handle-bm{left:50%;bottom:0;transform:translate(-50%,50%)}.hub-editor-handle-ml{left:0;top:50%;transform:translate(-50%,-50%)}.hub-editor-handle-mr{right:0;top:50%;transform:translate(50%,-50%)}.hub-editor-handle-rotate{left:50%;top:-18px;transform:translate(-50%,-50%);width:8px;height:8px}.hub-editor-media-bar{display:flex;align-items:center;gap:10px;padding:4px 2px}.hub-editor-play{flex:0 0 32px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:16px;background:var(--color-accent);color:#fff;cursor:pointer}.hub-editor-time{flex:0 0 auto;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted)}.hub-editor-seek{flex:1;accent-color:var(--color-accent)}.hub-editor-xyz,.hub-editor-scale-rotate,.hub-editor-utils{display:flex;gap:8px}.hub-editor-field{flex:1;display:flex;flex-direction:column;gap:4px;font-family:var(--font-sans)}.hub-editor-field-label{font-family:var(--font-sans);font-size:10px;font-weight:600;color:var(--color-text-muted);text-transform:none}.hub-editor-input{width:100%;min-height:40px;padding:8px 10px;border:none;border-radius:10px;background:#f3f4f6;font-family:var(--font-sans);font-size:var(--font-size-field);font-weight:600;color:var(--color-text);box-sizing:border-box}.hub-editor-opacity{display:flex;flex-direction:column;gap:8px}.hub-editor-opacity-head{display:flex;align-items:center;justify-content:space-between}.hub-editor-opacity-value{font-family:var(--font-sans);font-size:11px;font-weight:600;color:var(--color-text)}.hub-editor-opacity-slider{width:100%;accent-color:var(--color-accent)}.hub-editor-util{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 10px;border:none;border-radius:10px;background:#fff;box-shadow:0 2px 8px #00000014;color:var(--color-text);font-family:var(--font-sans);font-size:11px;font-weight:600;cursor:pointer}.hub-editor-advanced{opacity:.9}.hub-editor-keep{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:#fff;box-shadow:0 4px 12px #0000000f;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.hub-editor-keep:active,.hub-editor-keep:focus,.hub-editor-keep:focus-within{background:#fff;outline:none;box-shadow:0 4px 12px #0000000f}.hub-editor-keep-copy{flex:1;display:flex;flex-direction:column;gap:2px}.hub-editor-keep-title{font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--color-text)}.hub-editor-keep-desc{font-family:var(--font-sans);font-size:10px;font-weight:400;line-height:1.35;color:var(--color-text-muted)}.hub-editor-switch{position:relative;flex:0 0 44px;width:44px;height:26px}.hub-editor-switch input{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:44px;height:26px;margin:0;border:1px solid #e5e7eb;border-radius:13px;background:#f3f4f6;cursor:pointer;position:relative;transition:background .25s ease,border-color .25s ease;outline:none;-webkit-tap-highlight-color:transparent}.hub-editor-switch input:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .28s cubic-bezier(.4,0,.2,1)}.hub-editor-switch input:checked{background:var(--color-accent);border-color:var(--color-accent)}.hub-editor-switch input:checked:after{transform:translate(18px)}.hub-editor-switch input:focus,.hub-editor-switch input:focus-visible,.hub-editor-switch input:active{outline:none;box-shadow:none}.hub-editor-switch input:checked:focus,.hub-editor-switch input:checked:focus-visible,.hub-editor-switch input:checked:active{background:var(--color-accent);border-color:var(--color-accent)}.hub-variations-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--color-text)}.hub-variation-row{display:flex;align-items:center;gap:4px;width:100%;min-height:44px;padding:0 6px 0 14px;border:none;border-radius:12px;background:#fff;box-shadow:0 2px 8px #00000014;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--color-text);box-sizing:border-box}.hub-variation-row.is-selected{background:#eff6ff;color:var(--color-accent);box-shadow:none}.hub-variation-select{flex:1;display:inline-flex;align-items:center;min-height:44px;padding:0;border:none;background:transparent;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;text-align:left;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.hub-variation-delete{flex:0 0 40px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:10px;background:transparent;color:var(--color-text-muted);-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.hub-variation-delete:hover,.hub-variation-delete:focus-visible{color:#dc2626;background:#dc262614;outline:none}.hub-variation-name{font-family:inherit;font-size:inherit;font-weight:inherit}.hub-result-title,.hub-result-badge,.hub-prompt-label,.hub-subtitle,.hub-editor-title,.hub-editor-subtitle{font-family:var(--font-sans)}.diag-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.diag-table th,.diag-table td{text-align:left;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);vertical-align:top}.diag-table th{color:var(--color-text-muted);font-weight:500;width:42%}.spinner{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);text-align:center}.loading-splash{position:relative;padding:0;overflow:hidden;background:#fff}.loading-collage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.loading-collage-svg{display:block;width:100%;height:100%}.loading-glass{position:relative;z-index:1;background:#ffffffa6;border:3.5px solid #ffffff;-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px);box-shadow:0 12px 40px #00000014}.loading-glass-brand{position:absolute;left:50%;top:clamp(72px,24%,220px);transform:translate(-50%);width:min(242px,calc(100% - 48px));aspect-ratio:1 / 1;padding:16px;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;box-sizing:border-box}.loading-logo{display:block;width:200px;height:70px;margin:0 auto;flex-shrink:0}.loading-stack{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;flex-shrink:0}.loading-progress-track{width:117px;height:4px;border-radius:2px;overflow:hidden;background:#fff9}.loading-progress-fill{height:100%;width:0%;border-radius:2px;background:var(--color-accent);transition:width .28s ease}.loading-status{margin:0;font-size:var(--font-size-xs);font-weight:400;color:#000;text-align:center;line-height:1.3}.loading-glass-created{position:absolute;left:50%;bottom:max(24px,calc(var(--safe-bottom) + 16px));transform:translate(-50%);width:180px;height:72px;padding:14px 24px;border-radius:18px;display:flex;align-items:center;justify-content:center}.loading-created-by{display:block;width:115px;height:44px}.signup-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.signup-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.signup-content{position:relative;z-index:2;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(96px + var(--safe-top)) 0 calc(120px + var(--safe-bottom));overflow:hidden}.signup-brand{position:absolute;z-index:2;left:50%;top:max(24px,calc(var(--safe-top) + 16px));transform:translate(-50%);width:180px;height:72px;display:flex;align-items:center;justify-content:center;pointer-events:none}.signup-logo{display:block;width:171px;height:60px}.signup-card{position:relative;z-index:2;box-sizing:border-box;width:calc(100% - 48px);max-width:400px;margin-inline:auto;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;overflow:hidden;padding:0;flex-shrink:0}.signup-clerk-mount{width:100%;min-height:120px}.signup-card .cl-rootBox,.signup-card .cl-cardBox,.signup-card .cl-card{width:100%!important;min-width:0!important;max-width:100%!important;box-shadow:none!important}.signup-card .cl-card{gap:20px!important;padding:24px!important}.signup-card .cl-main,.signup-card .cl-form{gap:20px!important}.signup-card .cl-form>div{row-gap:16px!important}.signup-card .cl-socialButtons{grid-template-columns:1fr 1fr!important}.signup-card .cl-socialButtonsRoot,.signup-card .cl-socialButtons{gap:12px!important}.signup-card .cl-socialButtonsBlockButton{min-width:0!important;gap:8px!important;padding-inline:8px!important}.signup-card .cl-socialButtonsBlockButtonText{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signup-card .cl-footerAction,.signup-card .cl-footerItem{padding:12px 24px!important}.signup-status{margin:0 0 16px;text-align:center;font-size:var(--font-size-sm);padding:0 16px 16px}.signup-status-warn{color:var(--color-warning, #b45309)}.signup-continue-guest{display:block;width:calc(100% - 32px);margin:0 16px 16px}.signup-created-by{position:absolute;z-index:0;left:50%;bottom:max(24px,calc(var(--safe-bottom) + 16px));transform:translate(-50%);width:180px;height:72px;display:flex;align-items:center;justify-content:center;pointer-events:none}.signup-created-by img{display:block;width:115px;height:44px}.agreements-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.agreements-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none;opacity:.55}.scroll-edge-fade,.scroll-edge-fade-bottom{display:none}.app-header:after{content:"";position:absolute;left:0;right:0;top:100%;height:44px;z-index:2;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;background:linear-gradient(to bottom,#f3f3f3,#f3f3f3 8%,#f3f3f380 45%,#f3f3f326 75%,#f3f3f300)}.is-scrolled>.app-header:after{opacity:1;visibility:visible}.agreements-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;margin-bottom:calc(var(--safe-bottom) + 40px);padding-top:8px;padding-bottom:12px;overflow:auto}.agreements-title-block{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.agreements-title{margin:0;font-size:22px;font-weight:700;line-height:1.2}.agreements-subtitle{margin:0;font-size:var(--font-size-sm);line-height:1.35;color:var(--color-text-muted)}.agreements-legal-card{display:flex;flex-direction:column;gap:20px;width:100%;padding:20px;background:#fff;border-radius:20px;box-shadow:0 8px 24px #00000026}.agreements-section{display:flex;flex-direction:column;gap:8px}.agreements-section-highlight{padding:12px;border-radius:12px;background:#eff6ff}.agreements-section-title{margin:0;font-size:15px;font-weight:700;line-height:1.3}.agreements-section-body{margin:0;font-size:13px;font-weight:400;line-height:1.45;color:var(--color-text-muted);white-space:pre-line}.agreements-updated{margin:0;font-size:11px;color:var(--color-text-muted);text-align:center}.agreements-agree-row{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#fff;border-radius:16px;box-shadow:0 4px 16px #0000001a;cursor:pointer}.agreements-checkbox{flex:0 0 auto;width:22px;height:22px;margin-top:1px;padding:0;border:1.5px solid var(--color-border);border-radius:6px;background:#fff;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.agreements-checkbox.is-checked{border-color:var(--color-accent);background:var(--color-accent)}.agreements-check-icon{font-size:14px;line-height:1;font-weight:700;opacity:0}.agreements-checkbox.is-checked .agreements-check-icon{opacity:1}.agreements-agree-label{margin:0;flex:1;font-size:13px;font-weight:500;line-height:1.4}.agreements-cta{display:flex;flex-direction:column;align-items:center;gap:12px}.agreements-continue{width:100%;min-height:52px;border-radius:12px;font-size:16px;font-weight:700}.agreements-continue:disabled{opacity:.45;cursor:not-allowed}.agreements-note{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.ready-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.ready-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.ready-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:18px;padding-top:24px;padding-bottom:32px;overflow:auto}.ready-title-block{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.ready-title{margin:0;font-size:24px;font-weight:700;line-height:1.2}.ready-subtitle{margin:0;font-size:var(--font-size-sm);line-height:1.4;color:var(--color-text-muted)}.ready-plan-card{display:flex;flex-direction:column;gap:12px;padding:20px;background:#fff;border-radius:20px;box-shadow:0 8px 24px #00000026}.ready-price-block{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 0;text-align:center}.ready-plan-label{margin:0;font-size:var(--font-size-sm);font-weight:700;letter-spacing:1px;color:var(--color-accent)}.ready-price{margin:0;font-size:var(--font-size-hero);font-weight:700;line-height:.95}.ready-credits{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.ready-features{margin:0;padding:0;list-style:none}.ready-feature{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--color-border)}.ready-feature-icon{flex:0 0 auto;color:var(--color-text)}.ready-feature-label{font-size:var(--font-size-sm);font-weight:500}.ready-cta{display:flex;flex-direction:column;align-items:center;gap:14px}.ready-continue{width:100%;min-height:52px;border-radius:12px;font-size:var(--font-size-md);font-weight:700}.ready-compare{min-height:auto;padding:0;font-size:15px;font-weight:600;color:var(--color-accent)}.ready-trust{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.ready-trust-icon{flex:0 0 auto}.bottom-nav{position:relative;z-index:4;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:2px;padding:6px 8px calc(6px + var(--safe-bottom));background:#fff}.bottom-nav:before{display:none}.bottom-nav-item{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:0;padding:0;border:none;background:none;color:var(--color-text);cursor:pointer}.bottom-nav-item:disabled{opacity:.4;cursor:default}.bottom-nav-item.is-active{color:var(--color-accent)}.bottom-nav-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:9px;background:#000;color:#fff}.bottom-nav-badge.is-active{background:var(--color-accent)}.bottom-nav-label{font-family:var(--font-sans);font-size:10px;font-weight:500;line-height:1.1}.plans-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.plans-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.plans-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;padding-top:8px;padding-bottom:12px;overflow:auto}.plans-title-block{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.plans-title{margin:0;font-size:22px;font-weight:700;line-height:1.2}.plans-subtitle{margin:0;font-size:var(--font-size-sm);line-height:1.35;color:var(--color-text-muted)}.plans-cycle-row{display:flex;align-items:center;justify-content:center;gap:10px}.plans-cycle-toggle{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:#fff;box-shadow:0 2px 8px #00000014}.plans-cycle-tab{padding:6px 14px;border:none;border-radius:999px;background:transparent;color:var(--color-text);font-size:12px;font-weight:600;cursor:pointer}.plans-cycle-tab.is-active{background:var(--color-accent);color:#fff;font-weight:700}.plans-save-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#dbeafe;color:var(--color-accent);font-size:11px;font-weight:600;white-space:nowrap}.plans-banner:empty{display:none}.plans-cards{display:flex;flex-direction:column;gap:8px}.plans-card{display:flex;flex-direction:column;gap:8px;padding:12px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014}.plans-card-featured{box-shadow:0 4px 12px #2563eb26}.plans-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.plans-card-title-row{display:flex;align-items:center;gap:8px}.plans-card-name{font-size:14px;font-weight:700}.plans-popular{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:var(--color-accent);color:#fff;font-size:9px;font-weight:700;letter-spacing:.4px}.plans-card-glyph{flex:0 0 auto;color:var(--color-text-muted)}.plans-card-price{margin:0;font-size:24px;font-weight:700;line-height:1}.plans-card-free .plans-card-price{font-size:28px}.plans-card-credits{margin:0;font-size:12px;font-weight:600;line-height:1;color:var(--color-accent)}.plans-features{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.plans-feature{display:flex;align-items:center;gap:8px}.plans-check{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:8px;background:var(--color-accent);color:#fff}.plans-feature-label{font-size:11px;color:var(--color-text)}.plans-cta{display:inline-flex;align-items:center;justify-content:center;width:100%;height:40px;border-radius:10px;border:none;font-size:14px;font-weight:700;cursor:pointer}.plans-cta-primary{background:var(--color-accent);color:#fff}.plans-cta-outline{background:#fff;border:1px solid var(--color-accent);color:var(--color-accent);box-shadow:0 4px 10px #0000001a}.plans-cta.is-current{cursor:default;opacity:.85}.plans-free-lower{display:flex;align-items:center;justify-content:space-between;gap:10px}.plans-free-meta{display:flex;flex-direction:column;gap:2px}.plans-free-credits{font-size:12px;font-weight:600;color:var(--color-accent)}.plans-free-desc{font-size:11px;color:var(--color-text-muted)}.plans-card-free .plans-cta{width:auto;height:auto;padding:10px 12px;border-radius:10px;font-size:12px}.plans-disclaimer{margin:0;text-align:center;font-size:11px;color:var(--color-text-muted)}.url-box{word-break:break-all;font-size:var(--font-size-sm);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.header-account-cluster{display:flex;align-items:center;gap:var(--space-2)}.credits-pill{display:inline-flex;align-items:center;min-height:var(--touch-min);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;white-space:nowrap}.credits-pill:hover{border-color:var(--color-accent);color:var(--color-accent)}.payments-balance-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.payments-balance-coins{font-size:var(--font-size-xl);font-weight:700}.payments-plan-badge{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent)}.payments-offers{display:flex;flex-direction:column;gap:var(--space-4)}.payments-offer{padding:var(--space-4) 0;border-top:1px solid var(--color-border)}.payments-offer h2{margin:0 0 var(--space-2);font-size:var(--font-size-lg)}.payments-offer-price{margin:0 0 var(--space-2);font-size:var(--font-size-xl);font-weight:700}.payments-offer .muted{margin:0 0 var(--space-3)}.app-header{position:relative;z-index:5;flex:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:40px;align-items:center;gap:12px;min-height:40px;padding:calc(var(--safe-top) + 20px) 20px 0;overflow:visible}.app-header-slot{display:flex;align-items:center;min-width:40px;min-height:40px;overflow:visible}.app-header-slot-start{align-self:start;z-index:1}.app-header-slot-end{justify-content:flex-end;align-self:center}.app-header-slot-end:has(.app-header-right-stack){align-self:start}.app-header-icon-btn.app-header-info{color:var(--color-accent)}.app-header-slot-empty{display:block;width:40px;height:40px}.app-header-logo{display:block;width:122px;height:43px;overflow:visible;align-self:center}.cam-splash .app-header-icon-btn,.preview-splash .app-header-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none;-webkit-user-select:none;user-select:none}.cam-splash .app-header-icon-btn:focus,.cam-splash .app-header-icon-btn:focus-visible,.cam-splash .app-header-icon-btn:active,.preview-splash .app-header-icon-btn:focus,.preview-splash .app-header-icon-btn:focus-visible,.preview-splash .app-header-icon-btn:active{outline:none!important;outline-width:0!important;outline-style:none!important;outline-color:transparent!important;-webkit-tap-highlight-color:transparent;background:#fff;box-shadow:0 4px 10px #0000001a}.app-header-icon-btn::-moz-focus-inner{border:0;padding:0}.app-header-icon-btn,.app-header-plan-chip{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;max-width:40px;padding:0;border:none;border-radius:50%;aspect-ratio:1;background:#fff;color:var(--color-text);box-shadow:0 4px 10px #0000001a;cursor:pointer;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none;touch-action:manipulation;-webkit-user-select:none;user-select:none}.app-header-icon-btn svg,.app-header-plan-chip svg{pointer-events:none;-webkit-tap-highlight-color:transparent}.app-header-plan-chip{color:var(--color-accent)}.app-header-icon-btn:disabled{opacity:.75;cursor:default}.app-header-bell{position:relative}.app-header-bell-dot{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 2px #fff;pointer-events:none}.app-header-left-stack{display:flex;flex-direction:column;align-items:flex-start;gap:10px;overflow:visible}.app-header-right-stack{display:flex;flex-direction:column;align-items:flex-end;gap:10px;overflow:visible}.app-header-hanging-spacer{visibility:hidden;pointer-events:none}.app-header-slot:has(.app-header-left-stack),.app-header-slot:has(.app-header-right-stack){align-items:flex-start;height:auto;overflow:visible}.app-header:has(.app-header-left-stack),.app-header:has(.app-header-right-stack),.app-header-has-hanging-controls{padding-bottom:58px}.app-header-screen-title{position:absolute;left:50%;top:calc(var(--safe-top) + 90px);transform:translate(-50%,-50%);z-index:0;margin:0;max-width:calc(100% - 100px);padding:0 2px;font-family:var(--font-sans);font-size:22px;font-weight:700;line-height:1.1;text-align:center;color:var(--color-text);pointer-events:none;white-space:nowrap}.app-header-has-back-title{padding-bottom:28px}.app-header-has-back-title .app-header-screen-title{top:calc(var(--safe-top) + 68px)}.add-flat-splash .app-header-screen-title,.how-splash .app-header-screen-title,.notifications-splash .app-header-screen-title{font-size:26px;line-height:1.2}.notifications-splash .app-header-has-back-title{padding-bottom:50px}.notifications-splash .app-header-has-back-title .app-header-screen-title{top:calc(var(--safe-top) + 90px)}.plan-strip{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border-radius:14px;box-shadow:0 4px 12px #00000014}.plan-strip-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.plan-strip-title{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.plan-strip-coin{flex:0 0 auto;color:var(--color-accent)}.plan-strip-hint{margin:0;font-size:11px;color:var(--color-text-muted)}.plan-strip-upgrade{flex:0 0 auto;padding:8px 12px;border:none;border-radius:8px;background:var(--color-accent);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.project-card{position:relative;display:flex;align-items:center;gap:12px;padding:3px 12px 3px 3px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer;overflow:visible}.project-card-thumb{flex:0 0 94px;width:94px;height:94px;object-fit:cover;border-radius:12px;background:#f3f4f6}.project-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;overflow:visible}.project-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;overflow:visible}.project-card-title{margin:0;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-menu-wrap{position:relative;flex:0 0 auto;z-index:1}.project-card-menu-wrap.is-menu-open{z-index:40}.project-card-menu{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer}.project-card-menu-wrap.is-menu-open .project-card-menu,.project-card-menu:hover{background:#f3f4f6;color:var(--color-text)}.project-card-popover{position:absolute;top:50%;right:calc(100% + 6px);bottom:auto;left:auto;z-index:40;display:flex;flex-direction:column;gap:2px;min-width:148px;padding:6px;border-radius:12px;background:#fff;box-shadow:0 8px 24px #00000024;transform:translateY(-50%);font-family:var(--font-sans)}button.project-card-popover-item{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--color-text);font-family:var(--font-sans);font-size:13px;font-weight:500;font-style:normal;line-height:1.35;letter-spacing:normal;text-align:left;cursor:pointer}button.project-card-popover-item span{font-family:inherit;font-size:inherit;font-weight:inherit}button.project-card-popover-item:hover{background:#f3f4f6}button.project-card-popover-item.is-danger{color:var(--color-danger)}button.project-card-popover-item.is-danger:hover{background:#fff1f1}.project-card-status{align-self:flex-start;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.project-card-status.is-published{background:#dcfce7;color:#15803d}.project-card-status.is-draft,.project-card-status.is-autosave{background:#dbeafe;color:#1d4ed8}.project-card-meta{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:500;color:var(--color-text-muted)}.project-card-meta-icon{flex:0 0 auto}.project-card-updated{margin:0;font-size:11px;color:var(--color-text-muted)}.create-splash,.how-splash,.library-splash,.add-flat-splash,.guidelines-splash,.review-splash,.define-splash,.orient-splash,.quality-splash,.prepare-splash,.hub-splash,.publish-splash,.notifications-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.create-bg,.how-bg,.library-bg,.add-flat-bg,.guidelines-bg,.review-bg,.define-bg,.orient-bg,.quality-bg,.prepare-bg,.hub-bg,.notifications-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.create-body,.how-body,.library-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;align-self:stretch;box-sizing:border-box;width:100%;max-width:none;margin-left:0;margin-right:0;padding:20px 0 12px;overflow:auto}.create-body>*,.how-body>*,.library-body>*{width:100%;max-width:350px;margin-left:auto;margin-right:auto;box-sizing:border-box}.how-body{padding-top:0;gap:14px}.create-body{gap:24px}.create-hero-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:28px 24px;background:#fff;border-radius:24px;box-shadow:0 8px 24px #00000026;text-align:center}.create-hero-title{margin:0;font-size:22px;font-weight:700;line-height:1.2}.create-hero-desc{margin:0;font-size:14px;line-height:1.4;color:var(--color-text-muted)}.create-hero-cta{width:100%;min-height:48px;border-radius:10px;font-size:16px;font-weight:700}.create-hero-learn{min-height:auto;padding:0;font-size:14px;font-weight:600;color:var(--color-accent)}.create-recent{display:flex;flex-direction:column;gap:10px}.create-recent[hidden]{display:none}.create-recent-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.create-recent-title{margin:0;font-size:16px;font-weight:700}.create-recent-all{min-height:auto;padding:0;font-size:13px;font-weight:600;color:var(--color-accent)}.create-recent-list{display:flex;flex-direction:column;gap:10px}.queue-job-card{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer}.queue-job-card--home{padding:12px 14px}.queue-job-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.queue-job-title{margin:0;font-size:14px;font-weight:700;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.queue-job-status{margin:0;font-size:12px;font-weight:600;color:var(--color-accent)}.queue-job-status.is-waiting{color:var(--color-text-muted);font-weight:500}.queue-job-status.is-failed{color:#dc2626}.queue-job-progress{height:6px;border-radius:999px;background:#e5e7eb;overflow:hidden}.queue-job-progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width .35s ease}.queue-job-footer{margin:0;font-size:11px}.queue-job-cancel{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);cursor:pointer}.queue-job-cancel:hover{background:#f3f4f6;color:var(--color-text)}.queue-job-cancel:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.how-steps{display:flex;flex-direction:column;gap:10px}.how-step{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border-radius:16px;box-shadow:0 4px 12px #00000014}.how-step-icon{flex:0 0 72px;display:block;width:72px;height:72px}.how-step-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.how-step-title-row{display:flex;align-items:baseline;gap:4px}.how-step-num{font-size:14px;font-weight:700;color:var(--color-accent)}.how-step-title{font-size:14px;font-weight:700}.how-step-body{margin:0;font-size:12px;line-height:1.35;color:var(--color-text-muted)}.how-cta{margin-top:auto;min-height:48px;border-radius:10px;font-size:16px;font-weight:700}.add-flat-body,.guidelines-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;padding-top:0;padding-bottom:12px;overflow:auto}.add-flat-title-block,.guidelines-title-block{display:flex;flex-direction:column;align-items:center;gap:0;margin:0;padding:0;text-align:center}.add-flat-title,.guidelines-title{display:none}.add-flat-subtitle,.guidelines-subtitle{margin:0 0 4px;max-width:270px;font-family:var(--font-sans);font-size:14px;line-height:1.35;color:var(--color-text-muted)}.guidelines-subtitle{max-width:256px;font-size:13px}.add-flat-preview:not([hidden]){border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 4px 12px #00000014}.add-flat-preview[hidden]{display:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;min-height:0!important;height:0!important;overflow:hidden!important}.add-flat-preview img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;background:#f8f8f8}.add-flat-status:empty{display:none!important;margin:0;padding:0;min-height:0}.add-flat-actions{display:flex;flex-direction:column;gap:12px}.add-flat-tip-card,.add-flat-action-card{display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:14px;border:none;border-radius:16px;color:inherit;font:inherit;text-align:left;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;box-sizing:border-box}.add-flat-tip-card{background:#f2f9ff}.add-flat-action-card{background:#fff;box-shadow:0 4px 16px #0000001a}button.add-flat-action-card:focus,button.add-flat-action-card:focus-visible{outline:none;box-shadow:0 4px 16px #0000001a,0 0 0 2px #2563eb59}.add-flat-tip-badge-slot,.add-flat-action-icon{flex:0 0 44px;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px}.add-flat-tip-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:16px;background:var(--color-accent);color:#fff;font-size:15px;font-weight:700;line-height:1}.add-flat-action-icon{border-radius:12px;background:#fff;color:var(--color-accent)}.add-flat-tip-content,.add-flat-action-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.add-flat-tip-title,.add-flat-action-title{margin:0;font-family:var(--font-sans);font-size:15px;font-weight:700;color:var(--color-text)}.add-flat-tip-body,.add-flat-action-desc{margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:var(--color-text-muted)}.add-flat-guidelines-link{font-family:var(--font-sans);font-size:12px;font-weight:600;line-height:1.35;color:var(--color-accent);text-decoration:none}.add-flat-chevron{flex:0 0 auto;color:var(--color-accent)}.add-flat-continue{min-height:48px;border-radius:14px;font-size:16px;font-weight:700}.add-flat-notes{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%;box-sizing:border-box;padding:8px 4px 0;text-align:left}.add-flat-note{display:flex;align-items:flex-start;gap:6px;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:var(--color-text-muted);text-align:left}.add-flat-note-icon{flex:0 0 auto;margin-top:2px;color:var(--color-text-muted)}.guidelines-body{gap:10px;padding-top:12px}.guidelines-works,.guidelines-avoid{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:16px}.guidelines-works{background:#ecfdf5}.guidelines-avoid{background:#fef2f2}.guidelines-section-header{display:flex;align-items:center;gap:8px}.guidelines-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:12px;color:#fff}.guidelines-badge-ok{background:#16a34a}.guidelines-badge-bad{background:#dc2626}.guidelines-section-title{margin:0;font-size:15px;font-weight:700}.guidelines-works-img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;border-radius:12px;background:#fff}.guidelines-works-tags{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.guidelines-works-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500}.guidelines-check{color:#16a34a}.guidelines-avoid-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.guidelines-avoid-item{display:flex;flex-direction:column;gap:4px;min-width:0}.guidelines-avoid-img{display:block;width:100%;height:72px;object-fit:cover;border-radius:10px;background:#fff}.guidelines-avoid-label{margin:0;font-size:11px;font-weight:500;text-align:center;line-height:1.3}.guidelines-tip{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f}.guidelines-tip-badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:14px;background:var(--color-accent);color:#fff}.guidelines-tip-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.guidelines-tip-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:700}.guidelines-tip-body{margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:var(--color-text-muted)}.guidelines-cta{margin-top:4px;min-height:44px;border-radius:14px;font-size:16px;font-weight:700}.library-sort-toggle-arrows{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:0}.library-sort-toggle-arrow{display:block}.library-sort-toggle[data-order=draft-first] .library-sort-toggle-arrow--up,.library-sort-toggle[data-order=published-first] .library-sort-toggle-arrow--down{color:var(--color-accent)}.library-section{display:flex;flex-direction:column;gap:10px}.library-section+.library-section{margin-top:18px}.library-section-head{display:flex;align-items:flex-start;gap:10px}.library-section-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px}.library-section--generating .library-section-icon{color:var(--color-accent);background:#3b82f61f}.library-section--draft .library-section-icon{color:#1d4ed8;background:#dbeafe}.library-section--published .library-section-icon{color:#16a34a;background:#16a34a1f}.library-section-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.library-section-title{margin:0;font-size:15px;font-weight:700;color:var(--color-text)}.library-section-subtitle{margin:0;font-size:12px}.library-section-cards{display:flex;flex-direction:column;gap:10px}.library-flash:empty{display:none}.library-list{display:flex;flex-direction:column;gap:10px}.library-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 20px;text-align:center}.library-empty-title{margin:0;font-family:var(--font-sans);font-size:16px;font-weight:700;color:var(--color-text)}.library-empty-desc{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.4;color:var(--color-text-muted)}.library-auth-note{margin:4px 0 0;font-size:12px;text-align:center}.profile-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.profile-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.profile-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;max-width:350px;padding-top:16px;padding-bottom:12px;overflow:auto}.profile-identity{display:flex;align-items:flex-start;gap:14px}.profile-avatar{flex:0 0 72px;width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;border-radius:36px;background:#e5e7eb;color:var(--color-text-muted)}.profile-avatar.has-photo{background-size:cover;background-position:center;color:transparent}.profile-avatar.has-photo .profile-avatar-icon{display:none}.profile-avatar-icon{display:block}.profile-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.profile-name{margin:0;font-family:var(--font-sans);font-size:18px;font-weight:700;line-height:1.2}.profile-handle{margin:0;font-family:var(--font-sans);font-size:13px;color:var(--color-text-muted)}.profile-bio{margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:var(--color-text)}.profile-location{display:inline-flex;align-items:center;gap:4px;margin:0;font-size:12px;color:var(--color-text-muted)}.profile-location-icon{flex:0 0 auto}.profile-edit{width:100%;height:40px;border:1.5px solid var(--color-accent);border-radius:12px;background:#fff;color:var(--color-accent);font-family:var(--font-sans);font-size:14px;font-weight:700;box-shadow:0 4px 10px #0000001a;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.profile-edit-panel{display:flex;flex-direction:column;gap:10px;padding:14px;background:#fff;border-radius:14px;box-shadow:0 4px 12px #00000014}.profile-edit-panel[hidden]{display:none}.profile-edit-hint{margin:0;font-size:12px;line-height:1.35;color:var(--color-text-muted)}.profile-edit-label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;color:var(--color-text-muted)}.profile-edit-input,.profile-edit-textarea{width:100%;padding:10px 12px;border:1px solid #d0d0d0;border-radius:8px;background:#fff;color:var(--color-text);font:inherit;font-size:var(--font-size-field);font-weight:400}.profile-edit-textarea{resize:vertical;min-height:72px}.profile-edit-clerk{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:#eff6ff;color:var(--color-accent);font-size:13px;font-weight:600;cursor:pointer}.profile-edit-clerk[hidden]{display:none}.profile-edit-account{display:flex;flex-direction:column;gap:8px;width:100%}.profile-edit-account[hidden]{display:none}.profile-edit-signout{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;border:1px solid #d0d0d0;border-radius:8px;background:#fff;color:var(--color-text);font-size:13px;font-weight:600;cursor:pointer}.profile-edit-signout[hidden]{display:none}.profile-edit-signout:disabled{opacity:.6;cursor:wait}.profile-edit-actions{display:flex;gap:8px}.profile-edit-cancel,.profile-edit-save{flex:1;height:40px;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer}.profile-edit-cancel{border:1px solid #d0d0d0;background:#fff;color:var(--color-text)}.profile-edit-save{border:none;background:var(--color-accent);color:#fff}.profile-edit-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.profile-edit-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;max-width:350px;padding-top:8px;padding-bottom:24px;overflow:auto}.profile-edit-title{margin:0;font-size:22px;font-weight:700;line-height:1.2}.profile-edit-avatar-row{display:flex;align-items:center;gap:16px}.profile-edit-avatar{flex:0 0 88px;width:88px;height:88px;display:inline-flex;align-items:center;justify-content:center;border-radius:44px;background:#e5e7eb center / cover no-repeat;color:var(--color-text-muted)}.profile-edit-avatar-icon{display:block}.profile-edit-avatar-actions{display:flex;flex-direction:column;gap:8px}.profile-edit-photo-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1.5px solid var(--color-accent);border-radius:10px;background:#fff;color:var(--color-accent);font-size:13px;font-weight:700;cursor:pointer}.profile-edit-photo-remove{align-self:flex-start;padding:0 2px;border:none;background:transparent;color:var(--color-text-muted);font-size:12px;font-weight:600;cursor:pointer}.profile-edit-file{display:none}.profile-edit-field{display:flex;flex-direction:column;gap:6px}.profile-edit-field-label{font-size:12px;font-weight:700;color:var(--color-text)}.profile-edit-select{width:100%;padding:10px 12px;border:1px solid #d0d0d0;border-radius:8px;background:#fff;color:var(--color-text);font-size:var(--font-size-field);font-weight:400}.profile-stats{display:flex;align-items:center;padding:8px 0}.profile-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.profile-stat-value{font-family:var(--font-sans);font-size:18px;font-weight:700}.profile-stat-label{font-family:var(--font-sans);font-size:11px;color:var(--color-text-muted)}.profile-stat-divider{flex:0 0 1px;width:1px;height:28px;background:#e5e7eb}.profile-plan-card{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;padding:12px;border:none;border-radius:14px;background:#fff;box-shadow:0 4px 16px #0000001a;font-family:var(--font-sans);text-align:left}.profile-plan-row{display:flex;align-items:center;gap:10px;width:100%}.profile-plan-store{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:0;border:none;background:transparent;font-family:var(--font-sans);text-align:left;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.profile-plan-icon{flex:0 0 32px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:#2664eb}.profile-plan-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.profile-plan-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--color-text)}.profile-plan-credits{margin:0;display:inline-flex;align-items:center;gap:5px;font-family:var(--font-sans);font-size:12px;color:var(--color-text-muted)}.profile-plan-coin{flex:0 0 auto;color:var(--color-accent)}.profile-plan-upgrade{flex:0 0 auto;color:var(--color-accent);font-family:var(--font-sans);font-size:13px;font-weight:700}.profile-plan-actions{flex:0 0 auto;display:flex;align-items:center}.profile-plan-cancel,.profile-plan-keep{border:none;background:none;padding:0;font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer}.profile-plan-cancel{color:#b42318}.profile-plan-keep{color:var(--color-accent)}.profile-plan-cancel:disabled,.profile-plan-keep:disabled,.profile-plan-confirm-submit:disabled{opacity:.6;cursor:wait}.profile-plan-confirm[hidden],.profile-plan-upgrade[hidden]{display:none}.profile-plan-confirm-copy{margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.4;color:var(--color-text-muted)}.profile-plan-confirm-actions{display:flex;gap:8px;margin-top:8px}.profile-plan-confirm-dismiss,.profile-plan-confirm-submit{flex:1;height:36px;border-radius:10px;font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer}.profile-plan-confirm-dismiss{border:1px solid #d0d0d0;background:#fff;color:var(--color-text)}.profile-plan-confirm-submit{border:none;background:#b42318;color:#fff}.profile-plan-message:empty{display:none}.profile-tabs{display:flex;align-items:stretch}.profile-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0 0;border:none;background:none;color:var(--color-text-muted);cursor:pointer}.profile-tab.is-active{color:var(--color-accent)}.profile-tab:disabled{opacity:.55;cursor:default}.profile-tab-underline{display:block;width:40px;height:2px;border-radius:1px;background:transparent}.profile-tab.is-active .profile-tab-underline{background:var(--color-accent)}.profile-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.profile-new-experience{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;min-height:118px;padding:12px;border:1.5px solid var(--color-accent);border-radius:12px;background:#eff6ff;color:var(--color-accent);font-family:var(--font-sans);font-size:10px;font-weight:700;line-height:1.2;letter-spacing:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.profile-new-experience span{font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit}.profile-gallery-tile{position:relative;display:block;width:100%;aspect-ratio:1;padding:0;border:none;border-radius:12px;overflow:hidden;background:#e5e7eb;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.profile-gallery-thumb{display:block;width:100%;height:100%;object-fit:cover}.profile-gallery-pin{position:absolute;top:6px;right:6px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:#2664eb;color:#fff;box-shadow:0 2px 6px #0000002e}.profile-gallery-badge{position:absolute;left:6px;bottom:6px;display:inline-flex;align-items:center;gap:4px;max-width:calc(100% - 12px);padding:3px 7px;border-radius:999px;background:#ffffffeb;color:#111827;font-family:var(--font-sans);font-size:9px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discover-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.discover-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);pointer-events:none}.discover-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding-top:8px;padding-bottom:12px;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.discover-body::-webkit-scrollbar{display:none;width:0;height:0}.discover-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.discover-title{margin:0;font-family:var(--font-sans);font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.discover-header-actions{display:flex;align-items:center;gap:8px}.discover-search-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:999px;background:#fff;color:var(--color-text);box-shadow:0 4px 12px #0000001f;cursor:pointer;flex:0 0 auto;-moz-appearance:none;appearance:none;-webkit-appearance:none}.discover-search-btn.is-active{color:#2664eb;box-shadow:0 4px 14px #2664eb47}.discover-search-panel{width:100%}.discover-search-panel[hidden]{display:none}.discover-search-field{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 12px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0000000a}.discover-search-glyph{flex:0 0 auto;color:var(--color-text-muted)}.discover-search-input{flex:1;min-width:0;height:42px;border:none;background:transparent;color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-field);font-weight:500;outline:none}.discover-search-input::placeholder{color:var(--color-text-muted);font-weight:400}.discover-search-clear{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:999px;background:#f3f4f6;color:var(--color-text-muted);cursor:pointer}.discover-search-clear[hidden]{display:none}.discover-chips{display:flex;flex:0 0 auto;align-items:stretch;gap:4px;box-sizing:border-box;width:100%;padding:2px 0 4px;overflow:hidden}.discover-chip{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;padding:7px 4px;border:1px solid #e5e7eb;border-radius:999px;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:11px;font-weight:600;line-height:1.2;text-align:center;cursor:pointer;white-space:nowrap;-moz-appearance:none;appearance:none;-webkit-appearance:none}.discover-chip.is-active{border-color:#2664eb;background:#2664eb;color:#fff}.discover-feed{display:flex;flex-direction:column;gap:14px}.discover-empty{display:flex;flex-direction:column;gap:6px;padding:28px 16px;border-radius:16px;background:#ffffffe0;text-align:center}.discover-empty-title{margin:0;font-size:16px;font-weight:700}.discover-empty-desc{margin:0;font-size:13px;color:var(--color-text-muted);line-height:1.4}.discover-card{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:18px;background:#fff;box-shadow:0 4px 18px #00000014}.discover-card-head{display:flex;align-items:center;gap:10px}.discover-avatar{flex:0 0 40px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#e5e7eb;color:#374151;font-size:12px;font-weight:700;background-size:cover;background-position:center;overflow:hidden}.discover-avatar.has-photo{color:transparent}.discover-card-identity{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.discover-card-name{margin:0;font-size:14px;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discover-card-meta{margin:0;font-size:12px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discover-card-more{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:999px;background:transparent;color:var(--color-text-muted);cursor:pointer}.discover-card-more:disabled{cursor:default}.discover-media{position:relative;display:block;width:100%;aspect-ratio:1;padding:0;border:none;border-radius:14px;overflow:hidden;background:#e5e7eb;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.discover-media-img{display:block;width:100%;height:100%;object-fit:cover}.discover-view-ar{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-radius:999px;background:#2664eb;color:#fff;font-family:var(--font-sans);font-size:12px;font-weight:700;box-shadow:0 4px 12px #2664eb59;cursor:pointer}.discover-actions{display:flex;align-items:center}.discover-action{display:inline-flex;flex:1 1 0;align-items:center;justify-content:center;height:34px;border:none;border-radius:999px;background:transparent;color:var(--color-text);cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none;box-shadow:none}.discover-action:focus,.discover-action:focus-visible,.discover-action:active{outline:none;background:transparent;box-shadow:none}.discover-action:disabled{opacity:.55;cursor:default}.discover-copy{display:flex;flex-direction:column;gap:8px}.discover-caption{margin:0;font-size:13px;line-height:1.4;color:var(--color-text)}.discover-caption strong{font-weight:700}.cam-splash{position:relative;padding:0;overflow:hidden;background:#1a1a1a;-webkit-tap-highlight-color:transparent}.cam-splash button:focus,.cam-splash button:focus-visible,.cam-splash button:active,.cam-splash label.cam-upload:focus,.cam-splash label.cam-upload:focus-visible,.cam-splash label.cam-upload:active,.cam-splash input[type=file]:focus,.cam-splash input[type=file]:focus-visible{outline:none!important;outline-width:0!important;outline-style:none!important;outline-color:transparent!important;-webkit-tap-highlight-color:transparent}.cam-splash button svg,.cam-splash label.cam-upload svg{pointer-events:none;-webkit-tap-highlight-color:transparent}.cam-splash .cam-shutter:focus,.cam-splash .cam-shutter:focus-visible,.cam-splash .cam-shutter:active{background:transparent;box-shadow:0 0 0 3px #fff}.cam-splash .cam-rotate-btn:focus,.cam-splash .cam-rotate-btn:focus-visible,.cam-splash .cam-rotate-btn:active{background:#fff;box-shadow:0 2px 8px #0000002e}.cam-splash .cam-rotate-btn img{pointer-events:none}.cam-splash .cam-upload:focus,.cam-splash .cam-upload:focus-visible,.cam-splash .cam-upload:active{background:#fff;box-shadow:0 4px 10px #0000001a}.cam-splash .cam-shutter{background-color:transparent;opacity:1;mix-blend-mode:normal;filter:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.cam-splash .cam-shutter-inner,.cam-splash .cam-upload,.cam-splash .cam-rotate-btn{background-color:#fff;opacity:1;mix-blend-mode:normal;filter:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.cam-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:#000}.cam-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;background:#000}.cam-video.is-active{opacity:1}.cam-dim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#00000073;pointer-events:none}.cam-splash .app-header{position:relative;z-index:5;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.cam-splash .app-header:before{content:"";position:absolute;left:0;right:0;top:0;height:calc(var(--safe-top) + 118px);z-index:-1;pointer-events:none;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);box-shadow:0 2px 12px #00000014}.cam-sheet-host{position:absolute;left:0;right:0;bottom:0;z-index:4;pointer-events:none}.cam-sheet{pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;min-height:420px;padding:12px 24px calc(34px + var(--safe-bottom));border-radius:24px 24px 0 0;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg);box-shadow:0 -8px 32px #0003;transform:translateY(110%);transition:transform .42s cubic-bezier(.22,1,.36,1)}.cam-sheet.is-open{transform:translateY(0)}.cam-sheet-handle{width:40px;height:4px;border-radius:2px;background:#d0d0d0}.cam-sheet-icon{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;color:var(--color-accent)}.cam-sheet-icon.is-denied{width:61px;height:61px;color:#dc2626}.cam-sheet-copy{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;text-align:center}.cam-sheet-title{margin:0;font-size:22px;font-weight:700;line-height:1.2}.cam-sheet-body{margin:0;font-size:14px;line-height:1.4;color:var(--color-text-muted)}.cam-sheet-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%}.cam-sheet-cta{min-height:52px;border-radius:12px;font-size:16px;font-weight:600}.cam-sheet-secondary{min-height:auto;padding:4px 0;font-size:14px;font-weight:600;color:var(--color-accent)}.cam-live{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.cam-live>*{pointer-events:auto}.cam-instructions{position:absolute;top:calc(var(--safe-top) + 138px);left:0;right:0;z-index:3;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 20px 6px;box-sizing:border-box;pointer-events:none}.cam-title{display:none}.cam-splash .app-header-screen-title{color:#111}.cam-pill{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;padding:0 12px;background:#fffc;font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;text-align:center;color:#111;white-space:pre-line;box-shadow:0 2px 10px #00000014}.cam-pill-top{width:min(319px,100%);min-height:32px;height:auto;margin-top:0;border-radius:16px;background:#ffffff85;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.55);box-shadow:0 4px 18px #00000024;padding:6px 12px;white-space:normal;line-height:1.3}.cam-tip-pill.cam-pill-top{max-width:min(319px,calc(100% - 40px))}.cam-tip-pill{opacity:0;transition:opacity .42s ease;white-space:pre-line;text-align:center}.cam-tip-pill.is-visible{opacity:1}.cam-tip-pill.is-fading{opacity:0}.cam-tip-pill[hidden]{display:none!important}.cam-pill-bottom{position:absolute;left:50%;right:auto;transform:translate(-50%);width:max-content;max-width:calc(100% - 48px);bottom:calc(188px + var(--safe-bottom));min-height:0;height:auto;border-radius:999px;padding:5px 12px}.cam-guide-host[hidden]{display:none!important}.cam-guide-host{position:absolute;left:0;right:0;top:calc(var(--safe-top) + 118px);bottom:calc(172px + var(--safe-bottom));z-index:2;display:flex;align-items:center;justify-content:center;padding:24px 44px;box-sizing:border-box;pointer-events:none}.cam-guide-frame{position:relative;max-width:100%;max-height:100%;box-shadow:0 0 0 9999px #00000061;pointer-events:none}.cam-guide-frame.is-landscape{aspect-ratio:4 / 3;width:min(100%,100%);height:auto}.cam-guide-frame.is-portrait{aspect-ratio:3 / 4;height:min(100%,100%);width:auto}.cam-guide-corner{position:absolute;width:22px;height:22px;border-color:#fffffff2;border-style:solid;border-width:0}.cam-guide-corner-tl{top:0;left:0;border-top-width:2px;border-left-width:2px}.cam-guide-corner-tr{top:0;right:0;border-top-width:2px;border-right-width:2px}.cam-guide-corner-bl{bottom:0;left:0;border-bottom-width:2px;border-left-width:2px}.cam-guide-corner-br{bottom:0;right:0;border-bottom-width:2px;border-right-width:2px}.cam-guide-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.cam-guide-grid-line{position:absolute;background:#ffffff47}.cam-guide-grid-v{top:0;bottom:0;width:1px}.cam-guide-grid-v1{left:33.333%}.cam-guide-grid-v2{left:66.666%}.cam-guide-grid-h{left:0;right:0;height:1px}.cam-guide-grid-h1{top:33.333%}.cam-guide-grid-h2{top:66.666%}.cam-controls{position:absolute;left:0;right:0;bottom:calc(92px + var(--safe-bottom));z-index:4;display:flex;align-items:center;justify-content:space-between;padding:0 28px;height:80px;box-sizing:border-box}.cam-controls-side{flex:0 0 72px;display:flex;align-items:center;justify-content:center}.cam-controls-left{justify-content:flex-start}.cam-controls-right{justify-content:flex-end}.cam-rotate-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:50%;background-color:#fff;box-shadow:0 4px 10px #0000001a;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;isolation:isolate}.cam-rotate-icon{display:block;width:28px;height:28px;object-fit:contain}.cam-gallery{flex:0 0 44px;width:44px;height:44px;border-radius:10px;overflow:hidden;background:#3a3a3a;border:2px solid #ffffff;cursor:pointer}.cam-gallery img{display:block;width:100%;height:100%;object-fit:cover}.cam-gallery:not(.has-image){opacity:.55}.cam-shutter{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;min-width:72px;min-height:72px;padding:0;border:none;border-radius:50%;background:transparent;box-shadow:0 0 0 3px #fff;cursor:pointer;flex-shrink:0;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;isolation:isolate}.cam-shutter-inner{display:block;width:58px;height:58px;min-width:58px;min-height:58px;border-radius:50%;background-color:#fff;flex-shrink:0}.cam-flip{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:none;border-radius:24px;background:#fff;color:var(--color-text);box-shadow:0 4px 10px #0000001a;cursor:pointer}.cam-upload{position:absolute;left:20px;right:20px;bottom:calc(20px + var(--safe-bottom));z-index:4;display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 14px;border:none;border-radius:12px;background-color:#fff;box-shadow:0 4px 10px #0000001a;color:#111;font-size:14px;font-weight:600;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;outline:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;isolation:isolate}.cam-upload svg{color:var(--color-accent)}.review-body{position:relative;z-index:1;align-self:stretch;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;width:100%;max-width:none;margin:0;padding:4px 0 12px;overflow:auto;box-sizing:border-box}.review-title-block{display:flex;flex-direction:column;align-items:center;gap:0;padding:0 20px;text-align:center}.review-title{display:none}.review-subtitle{margin:0;max-width:280px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.review-preview{flex:0 0 auto;align-self:stretch;display:flex;align-items:center;justify-content:center;width:100%;height:min(42vh,300px);margin:0;overflow:hidden;border-radius:0;background:#111827;touch-action:pan-y}.review-preview-img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#111827;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.review-checks-host{padding:0 20px}.review-checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.review-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;line-height:1.3;color:var(--color-text)}.review-check-icon{flex:0 0 auto}.review-check-ok .review-check-icon{color:#16a34a}.review-check-warn .review-check-icon{color:#d97706}.review-check-info .review-check-icon{color:var(--color-accent)}.review-analyzing{display:flex;align-items:center;gap:10px;min-height:56px}.review-analyzing-label{margin:0;font-size:13px;color:var(--color-text-muted)}.review-message:empty{display:none}.review-message{padding:0 20px}.review-message .status-banner{font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;border-radius:12px}.review-actions{display:flex;flex-direction:column;gap:8px;padding:0 20px}.review-cta-row{display:flex;align-items:stretch;gap:10px;width:100%}.review-btn-primary{min-height:48px;border-radius:14px;font-size:15px;font-weight:700}.review-btn-use{flex:1 1 auto;min-width:0}.review-btn-secondary{min-height:48px;border-radius:14px;border:none;background:#fff;color:var(--color-text);font-size:15px;font-weight:600;box-shadow:0 4px 10px #0000001a}.review-btn-retake{flex:0 0 auto;min-width:104px;padding-inline:16px}.review-btn-secondary:hover:not(:disabled){background:#fff}.review-btn-upload{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;cursor:pointer;color:var(--color-text)}.review-btn-upload svg{color:var(--color-accent)}.define-body{position:relative;z-index:1;align-self:stretch;flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;width:100%;margin:0;padding:4px 0 12px;overflow:auto;box-sizing:border-box}.define-title-block{display:flex;flex-direction:column;align-items:center;gap:0;padding:0 20px;text-align:center}.define-title{display:none}.define-subtitle{margin:0;max-width:320px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.define-loading{padding:48px 20px}.define-editor-host{flex:0 0 auto;align-self:stretch;width:100%;max-width:none;height:min(42vh,300px);margin:0;overflow:hidden;border-radius:0;background:#111827}.define-splash .corner-editor{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.define-splash .corner-canvas{width:auto!important;max-width:100%;max-height:100%;border:none;border-radius:0}.define-foot{display:flex;flex-direction:column;gap:10px;padding:0 20px}.define-shape-card{display:flex;flex-direction:column;gap:8px;margin:0 20px;padding:12px;border-radius:14px;background:#fff}.define-shape-options{display:flex;gap:8px}.define-shape{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:78px;padding:8px 4px;border:none;border-radius:12px;background:#fff;box-shadow:0 4px 10px #0000001a;color:var(--color-text-muted);font-family:var(--font-sans);font-size:12px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.define-shape span{font-family:inherit;font-size:inherit;font-weight:inherit}.define-shape.is-selected{background:#eff6ff;box-shadow:none;color:var(--color-accent)}.define-shape-icon{color:inherit}.define-message:empty{display:none}.define-message .status-banner{font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;border-radius:12px}.define-confirm{min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.define-custom-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}.define-custom-actions[hidden]{display:none!important}.define-point-count{margin:0;flex:1 1 auto;font-size:12px;font-weight:500;color:var(--color-text-muted)}.define-add-point,.define-remove-point{min-height:36px;padding:0 12px;border-radius:10px;font-size:13px;font-weight:600}.define-add-point{border:none;background:#eff6ff;color:var(--color-accent)}.define-remove-point{background:#fff;border:1px solid var(--color-border);color:var(--color-text)}.orient-body{position:relative;z-index:1;align-self:stretch;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;width:100%;margin:0;padding:4px 0 12px;overflow:auto;box-sizing:border-box}.orient-title-block{display:flex;flex-direction:column;align-items:center;gap:0;padding:0 20px;text-align:center}.orient-title{display:none}.orient-subtitle{margin:0;max-width:320px;font-size:13px;line-height:1.35;color:var(--color-text-muted);font-family:var(--font-sans)}.orient-loading{padding:48px 20px}.orient-preview{width:100%;aspect-ratio:1;overflow:hidden;background:#e5e5e5}.orient-preview-img{display:block;width:100%;height:100%;object-fit:contain;background:#111827}.orient-foot{display:flex;flex-direction:column;gap:12px;padding:0 20px}.orient-tip{margin:0;font-size:12px;line-height:1.35;text-align:center;color:var(--color-text-muted);font-family:var(--font-sans);font-weight:500}.orient-tools{display:flex;gap:8px;width:100%}.orient-tool{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:64px;padding:10px 8px;border:none;border-radius:12px;background:#fff;box-shadow:0 4px 10px #0000001a;color:var(--color-text);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer}.orient-tool-icon{color:var(--color-accent)}.orient-message:empty{display:none}.orient-message .status-banner{font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;border-radius:12px}.orient-confirm{min-height:48px;border-radius:14px;font-size:15px;font-weight:700;font-family:var(--font-sans)}.quality-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding-top:4px;padding-bottom:12px;overflow:auto}.quality-title-block{display:flex;flex-direction:column;align-items:center;gap:0;padding:0;text-align:center}.quality-subtitle{margin:0;max-width:320px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.quality-loading{padding:48px 0}.quality-error{margin:0;padding:0;font-family:var(--font-sans);font-size:14px;line-height:1.4;color:var(--color-danger);text-align:center}.quality-status{display:flex;align-items:center;gap:14px;margin:0;padding:14px;border-radius:16px;box-sizing:border-box}.quality-status-strong{background:#ecfdf3}.quality-status-usable{background:#fff8e8}.quality-status-weak{background:#fff1f1}.quality-score{flex:0 0 56px;width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:28px;font-family:var(--font-sans);font-size:22px;font-weight:700;line-height:1;color:#fff}.quality-status-strong .quality-score{background:#15803d}.quality-status-usable .quality-score{background:#b45309}.quality-status-weak .quality-score{background:#dc2626}.quality-status-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.quality-status-title{margin:0;font-family:var(--font-sans);font-size:16px;font-weight:700;line-height:1.25;color:var(--color-text)}.quality-status-desc{margin:0;font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;color:var(--color-text-muted)}.quality-preview{flex:0 0 auto;align-self:stretch;display:flex;align-items:center;justify-content:center;width:100%;height:min(34vh,240px);margin:0;overflow:hidden;border-radius:12px;background:#111827;touch-action:pan-y}.quality-preview-img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#111827;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.quality-metrics{display:flex;flex-direction:column;gap:0;margin:0;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;box-sizing:border-box}.quality-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}.quality-metric-chip{display:flex;align-items:baseline;justify-content:flex-start;gap:4px;min-width:0}.quality-metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.quality-metric-label{font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted)}.quality-metric-value{font-family:var(--font-sans);font-size:11px;font-weight:700;color:var(--color-text)}.quality-actions{display:flex;flex-direction:column;gap:8px;padding:0;margin-top:4px}.quality-btn-primary{min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.quality-btn-secondary{min-height:48px;border-radius:14px;border:none;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:14px;font-weight:600;box-shadow:0 4px 10px #0000001a}.prepare-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding-top:4px;padding-bottom:12px;overflow:auto}.prepare-title-block{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.prepare-subtitle{margin:0;max-width:320px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.prepare-progress-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 20px 18px;border-radius:20px;background:#fff;box-shadow:0 8px 24px #0000001a;box-sizing:border-box}.prepare-ring-wrap{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center}.prepare-ring{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}.prepare-ring-track{stroke:#e5e7eb;stroke-width:8}.prepare-ring-fill{stroke:var(--color-accent);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .25s ease}.prepare-ring-value{position:relative;z-index:1;font-family:var(--font-sans);font-size:22px;font-weight:700;color:var(--color-accent);line-height:1}.prepare-fail-badge{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:32px;background:#fee2e2;color:var(--color-danger);font-family:var(--font-sans);font-size:28px;font-weight:700;line-height:1}.prepare-status-label{margin:0;font-family:var(--font-sans);font-size:15px;font-weight:700;line-height:1.3;text-align:center;color:var(--color-text)}.prepare-bar{width:100%;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden}.prepare-bar-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width .25s ease}.prepare-bar-fill.is-failed{background:var(--color-danger)}.prepare-bar-fill.is-success{background:var(--color-success)}.prepare-footnote{margin:0;max-width:280px;font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.35;text-align:center;color:var(--color-text-muted)}.prepare-steps-card{display:flex;flex-direction:column;gap:0;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;box-sizing:border-box}.prepare-steps-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}.prepare-step{display:flex;align-items:center;gap:6px;min-width:0}.prepare-step-icon{flex:0 0 18px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;border:1.5px solid #d1d5db;box-sizing:border-box;color:transparent}.prepare-step-icon.is-done{border-color:transparent;background:#16a34a;color:#fff}.prepare-step-icon.is-failed{border-color:transparent;background:#dc2626;color:#fff}.prepare-step-icon.is-active{border-color:var(--color-accent);background:#eff6ff}.prepare-step-icon.is-pending,.prepare-step-icon.is-incomplete{border-color:#d1d5db;background:transparent}.prepare-step-label{font-family:var(--font-sans);font-size:11px;font-weight:600;color:var(--color-text);line-height:1.25}.prepare-step.is-pending .prepare-step-label,.prepare-step.is-incomplete .prepare-step-label{font-weight:500;color:var(--color-text-muted)}.prepare-step.is-failed .prepare-step-label{color:var(--color-danger)}.prepare-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.prepare-btn-primary{min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.prepare-btn-secondary{min-height:48px;border-radius:14px;border:none;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:14px;font-weight:600;box-shadow:0 4px 10px #0000001a}.publish-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.publish-splash .app-header-screen-title{left:calc(50% + 22px);max-width:calc(100% - 88px)}.publish-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 10% 0%,rgba(37,99,235,.06),transparent 55%),radial-gradient(ellipse 70% 45% at 90% 100%,rgba(0,0,0,.04),transparent 50%),#f3f3f3}.publish-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;padding-top:4px;padding-bottom:12px;overflow:auto}.publish-title-block{display:flex;flex-direction:column;align-items:center;gap:0;text-align:center}.publish-title{margin:0;max-width:320px;font-family:var(--font-sans);font-size:22px;font-weight:700;line-height:1.2;color:var(--color-text)}.publish-subtitle{margin:8px 0 0;max-width:300px;font-family:var(--font-sans);font-size:13px;font-weight:400;line-height:1.35;color:var(--color-text-muted)}.publish-ready-card{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;padding:24px 20px 20px;border-radius:18px;background:#fff;box-shadow:0 4px 14px #00000014;text-align:center;box-sizing:border-box}.publish-ready-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:999px;background:#2563eb1f}.publish-ready-icon-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:var(--color-accent);color:#fff}.publish-ready-heading{margin:4px 0 0;font-family:var(--font-sans);font-size:18px;font-weight:700;line-height:1.25;color:var(--color-text)}.publish-ready-copy{margin:0;max-width:260px;font-family:var(--font-sans);font-size:13px;font-weight:400;line-height:1.4;color:var(--color-text-muted)}.publish-ready-card .publish-cta{width:100%;margin-top:8px}.publish-field{display:flex;flex-direction:column;gap:8px}.publish-label{font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--color-text-muted)}.publish-name-input{width:100%;min-height:48px;padding:12px 14px;border:none;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;font-family:var(--font-sans);font-size:var(--font-size-field);font-weight:600;color:var(--color-text);box-sizing:border-box}.publish-name-input:focus,.publish-name-input:focus-visible{outline:none;box-shadow:0 4px 12px #00000014}.publish-visibility{display:flex;flex-direction:column;gap:8px}.publish-visibility-option{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;border:none;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;text-align:left;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.publish-visibility-option.is-selected,.publish-visibility-option:hover,.publish-visibility-option:active{background:#fff;box-shadow:0 4px 12px #00000014}.publish-visibility-option:focus,.publish-visibility-option:focus-visible{outline:none;box-shadow:0 4px 12px #00000014}.publish-radio{flex:0 0 20px;width:20px;height:20px;margin-top:1px;border:2px solid #d1d5db;border-radius:50%;box-sizing:border-box;position:relative}.publish-radio.is-selected{border-color:var(--color-accent)}.publish-radio.is-selected:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--color-accent)}.publish-visibility-copy{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.publish-visibility-title{font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--color-text)}.publish-visibility-desc{font-family:var(--font-sans);font-size:12px;font-weight:400;line-height:1.35;color:var(--color-text-muted)}.publish-upload-note{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:#eff6ff;color:var(--color-accent);font-family:var(--font-sans);font-size:12px;font-weight:600;line-height:1.35}.publish-upload-note span{color:var(--color-text);font-weight:500}.publish-progress:empty,.publish-messages:empty,.publish-collection:empty{display:none}.publish-cta{display:flex;flex-direction:column;gap:10px}.publish-btn-primary{min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.publish-btn-secondary,.btn.publish-btn-secondary{min-height:48px;border-radius:14px;border:none;background:#fff;color:#111;font-family:var(--font-sans);font-size:14px;font-weight:700;box-shadow:0 4px 10px #0000001a}.publish-btn-secondary:focus,.publish-btn-secondary:focus-visible,.btn.publish-btn-secondary:focus,.btn.publish-btn-secondary:focus-visible{outline:none}.publish-btn-secondary svg{color:#111}.publish-collection-note{margin:0;text-align:center;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted)}.notifications-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;padding-top:0;padding-bottom:12px;overflow:auto}.notifications-title-block{display:flex;flex-direction:column;align-items:center;text-align:center}.notifications-subtitle{margin:0;max-width:320px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.notifications-list{gap:10px}.notifications-empty{text-align:center;padding:24px 8px}.notifications-card{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon head" "icon body" "icon action" "icon progress";column-gap:12px;row-gap:6px;padding:14px;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014}.notifications-card-icon{grid-area:icon;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}.notifications-card-icon.is-complete{background:#dcfce7;color:#16a34a}.notifications-card-icon.is-active{background:#eff6ff;color:var(--color-accent)}.notifications-card-icon.is-failed{background:#fef2f2;color:#dc2626}.notifications-card-ring{width:22px;height:22px;border-radius:50%;background:conic-gradient(var(--color-accent) calc(var(--ring-pct, 18) * 1%),#dbeafe 0);mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0)}.notifications-card-head{grid-area:head;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.notifications-card-title{margin:0;font-family:var(--font-sans);font-size:13px;font-weight:700;color:var(--color-text)}.notifications-card-time{flex-shrink:0;font-family:var(--font-sans);font-size:11px;color:var(--color-text-muted)}.notifications-card-body{grid-area:body;margin:0;font-family:var(--font-sans);font-size:12px;line-height:1.4;color:var(--color-text-muted)}.notifications-card-action{grid-area:action;justify-self:start;padding:0;border:none;background:transparent;color:var(--color-accent);font-family:var(--font-sans);font-size:12px;font-weight:700;cursor:pointer}.notifications-card.is-clickable{cursor:pointer}.notifications-card.is-clickable:active{opacity:.92}.notifications-card-progress-track{grid-area:progress;height:4px;border-radius:999px;background:#e8edf5;overflow:hidden}.notifications-card-progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width .35s ease}.publish-collection{display:flex;flex-direction:column;gap:10px;margin-top:4px}.publish-collection-count{margin:0;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted)}.publish-collection-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.publish-collection-title{margin:0;font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--color-text)}.publish-collection-manage{border:none;background:transparent;color:var(--color-accent);font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer;padding:0}.publish-collection-list{display:flex;flex-direction:column;gap:8px}.publish-collection-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:#fff;box-shadow:0 4px 12px #00000014;box-sizing:border-box}.publish-collection-thumb{flex:0 0 52px;width:52px;height:52px;border-radius:10px;object-fit:cover;background:#e5e7eb}.publish-collection-thumb.is-empty{display:block}.publish-collection-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.publish-collection-name{font-family:var(--font-sans);font-size:13px;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.publish-collection-type{font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted)}.publish-collection-actions{flex:0 0 auto;display:flex;flex-direction:column;gap:6px}.publish-collection-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.publish-collection-icon-btn.is-edit{background:#eff6ff;color:var(--color-accent)}.publish-collection-icon-btn.is-delete{background:#fef2f2;color:#dc2626}.share-splash{position:relative;padding:0;width:100%;max-width:100%;min-width:0;overflow:hidden;background:#f3f3f3}.share-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:center / cover no-repeat url(/assets/brand/vyra_bkg_a.jpeg)}.share-body{position:relative;z-index:1;flex:1;min-height:0;min-width:0;max-width:100%;display:flex;flex-direction:column;gap:16px;padding-top:4px;padding-bottom:12px;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.share-title-block{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;flex:0 0 auto}.share-subtitle{margin:0;max-width:300px;font-family:var(--font-sans);font-size:13px;line-height:1.35;color:var(--color-text-muted)}.share-hero{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;flex:0 0 auto;width:100%}.share-thumb{position:relative;width:100%;aspect-ratio:16 / 10;max-height:168px;overflow:hidden;border-radius:14px;background:#111827;flex:0 0 auto}.share-thumb-img{display:block;width:100%;height:100%;object-fit:cover}.share-thumb-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#9ca3af}.share-thumb-empty[hidden]{display:none!important}.share-experience-name{margin:0;font-family:var(--font-sans);font-size:16px;font-weight:700;color:var(--color-text)}.share-published-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#dcfce7;color:var(--color-success);font-family:var(--font-sans);font-size:11px;font-weight:600}.share-published-badge svg{stroke-width:2.5}.share-btn-upload{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;padding:8px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:var(--color-accent);font-family:var(--font-sans);font-size:13px;font-weight:700;box-shadow:0 4px 10px #0000001a;cursor:pointer}.share-btn-upload span{color:var(--color-accent)}.share-btn-upload svg{color:var(--color-accent)}.share-btn-upload:focus,.share-btn-upload:focus-visible{outline:none}.share-name-field{display:flex;flex-direction:column;gap:6px;width:100%;text-align:left}.share-name-label{font-family:var(--font-sans);font-size:12px;font-weight:700;color:var(--color-text)}.share-name-input{width:100%;min-height:48px;padding:12px 14px;border:none;border-radius:14px;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-field);font-weight:600;box-shadow:0 4px 14px #00000014;outline:none;box-sizing:border-box}.share-name-input::placeholder{color:var(--color-text-muted);font-weight:400}.share-name-input:focus,.share-name-input:focus-visible{box-shadow:0 4px 16px #2664eb2e}.share-description-field{display:flex;flex-direction:column;gap:6px;width:100%;text-align:left}.share-description-label{font-family:var(--font-sans);font-size:12px;font-weight:700;color:var(--color-text)}.share-description-input{width:100%;min-height:84px;padding:12px 14px;border:none;border-radius:14px;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-field);line-height:1.4;resize:vertical;box-shadow:0 4px 14px #00000014;outline:none}.share-description-input::placeholder{color:var(--color-text-muted)}.share-description-input:focus{box-shadow:0 4px 16px #2664eb2e}.share-published-badge[hidden]{display:none!important}.share-card{display:flex;flex-direction:column;gap:0;padding:4px 0;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014;overflow:hidden;flex:0 0 auto;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.share-card-title{margin:0;padding:14px 14px 6px;font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--color-text)}.share-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid #f3f4f6;min-width:0;max-width:100%;box-sizing:border-box}.share-card>.share-row:first-child,.share-card>.share-card-title+.share-row{border-top:none}.share-row-stack{flex-direction:column;align-items:stretch}.share-row-top{display:flex;align-items:center;gap:10px;width:100%}.share-row-main{flex:1;display:flex;align-items:flex-start;gap:10px;min-width:0}.share-row-icon{flex:0 0 auto;display:inline-flex;color:var(--color-accent);margin-top:1px}.share-row-copy{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.share-row-title{font-family:var(--font-sans);font-size:13px;font-weight:700;color:var(--color-text)}.share-row-meta{display:block;max-width:100%;font-family:var(--font-sans);font-size:11px;font-weight:500;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-row-desc{font-family:var(--font-sans);font-size:11px;font-weight:400;line-height:1.35;color:var(--color-text-muted)}.share-row-trailing{display:flex;align-items:center;gap:8px;flex:0 0 auto}.share-mini-btn{flex:0 0 auto;min-height:32px;padding:8px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;box-shadow:0 4px 10px #0000001a;color:var(--color-accent);font-family:var(--font-sans);font-size:12px;font-weight:700;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.share-mini-btn:focus,.share-mini-btn:focus-visible{outline:none}.share-switch{position:relative;flex:0 0 40px;width:40px;height:24px}.share-switch input{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:40px;height:24px;margin:0;border:1px solid #e5e7eb;border-radius:12px;background:#d1d5db;cursor:pointer;position:relative;transition:background .25s ease,border-color .25s ease;outline:none;-webkit-tap-highlight-color:transparent}.share-switch input:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:9px;background:#fff;box-shadow:0 1px 3px #0000002e;transition:transform .28s cubic-bezier(.4,0,.2,1)}.share-switch input:checked{background:var(--color-accent);border-color:var(--color-accent)}.share-switch input:checked:after{transform:translate(16px)}.share-switch input:focus,.share-switch input:focus-visible,.share-switch input:active{outline:none;box-shadow:none}.share-switch input:checked:focus,.share-switch input:checked:focus-visible,.share-switch input:checked:active{background:var(--color-accent);border-color:var(--color-accent)}.share-location-block{display:flex;flex-direction:column;gap:8px;padding-top:10px}.share-map-preview{position:relative;width:100%;height:88px;border-radius:12px;overflow:hidden;background:#e8f0e9}.share-map-preview:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 18%,rgba(120,140,110,.28) 18.5%,transparent 19%),linear-gradient(0deg,transparent 42%,rgba(120,140,110,.24) 42.5%,transparent 43%),linear-gradient(90deg,transparent 62%,rgba(160,140,100,.22) 62.5%,transparent 63%),linear-gradient(0deg,transparent 68%,rgba(120,140,110,.2) 68.5%,transparent 69%);opacity:.85}.share-map-pin{position:absolute;left:50%;top:46%;transform:translate(-50%,-100%);color:var(--color-accent);filter:drop-shadow(0 2px 4px rgba(37,99,235,.35));z-index:1}.share-location-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.share-location-name{font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--color-text)}.share-location-change{border:none;background:transparent;color:var(--color-accent);font-family:var(--font-sans);font-size:12px;font-weight:700;cursor:pointer;padding:0}.share-messages:empty{display:none}.share-btn-primary{flex:0 0 auto;min-height:48px;border-radius:14px;font-family:var(--font-sans);font-size:15px;font-weight:700}.share-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.profile-visitor-splash .profile-visitor-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-visitor-follow{min-height:44px;border:none;border-radius:999px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:14px;font-weight:700;cursor:pointer}.profile-visitor-follow.is-following{background:#fff;color:var(--color-text);border:1px solid rgba(0,0,0,.12)}.profile-visitor-message{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:#fff;color:var(--color-text);font-family:var(--font-sans);font-size:14px;font-weight:700;cursor:pointer}.profile-avatar-initials{font-family:var(--font-sans);font-size:20px;font-weight:700;color:var(--color-text-muted)}.profile-visitor-empty{grid-column:1 / -1;margin:0;font-size:14px;color:var(--color-text-muted)}.discover-avatar-btn,.discover-card-identity-btn{border:none;background:transparent;padding:0;text-align:left;cursor:pointer}.discover-card-identity-btn{flex:1;min-width:0}.discover-action-like.is-liked svg{fill:var(--color-accent);stroke:var(--color-accent)}.discover-action-comment.is-open{background:#2563eb1f}.discover-action-save.is-saved svg rect{fill:var(--color-accent);stroke:var(--color-accent)}.discover-action-save.is-saved svg path{stroke:#fff}.discover-comment-panel{display:flex;flex-direction:column;gap:8px;padding:0 0 4px}.discover-comment-panel[hidden]{display:none}.vyra-comment-compose{display:flex;align-items:center;gap:8px}.vyra-comment-input{flex:1;min-width:0;padding:10px 14px;border:none;border-radius:999px;background:#fff;font-family:var(--font-sans);font-size:var(--font-size-field);box-shadow:inset 0 0 0 1px #0000001f}.vyra-comment-post{flex:0 0 auto;flex-shrink:0;min-width:64px;min-height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer}.discover-comment-list{display:flex;flex-direction:column;gap:6px}.discover-comment-empty{margin:0;font-size:13px;color:var(--color-text-muted)}.discover-comment-line{margin:0;font-size:13px;line-height:1.4}.project-comment-empty{margin:0;font-size:13px;color:var(--color-text-muted)}.project-detail-splash{position:relative;padding:0;overflow:hidden;background:#f3f3f3}.project-detail-body{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;max-width:350px;padding-top:8px;padding-bottom:12px;overflow:auto;align-self:flex-start;box-sizing:border-box;width:calc(100% - var(--vyra-scroll-inset));margin-left:var(--vyra-scroll-inset);margin-right:0;padding-right:var(--vyra-scroll-inset)}.project-detail-loading{margin:0;font-size:14px;color:var(--color-text-muted)}.project-hero{position:relative;width:100%;aspect-ratio:4 / 3;min-height:200px;border-radius:16px;overflow:hidden;background:#e5e7eb;flex-shrink:0}.project-hero-img{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:cover}.project-hero-view-ar{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-radius:999px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:12px;font-weight:700;cursor:pointer}.project-author-row{display:flex;align-items:center;gap:10px}.project-author-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:0;text-align:left;cursor:pointer}.project-author-avatar{flex:0 0 40px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:20px;background:#e5e7eb;font-size:13px;font-weight:700;color:var(--color-text-muted)}.project-author-avatar.has-photo{background-size:cover;background-position:center;color:transparent}.project-author-name{margin:0;font-size:14px;font-weight:700}.project-author-meta{margin:2px 0 0;font-size:12px;color:var(--color-text-muted)}.project-visitor-follow{flex:0 0 auto;min-height:36px;padding:0 16px;border:none;border-radius:999px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer}.project-visitor-follow.is-following{background:#fff;color:var(--color-text);border:1px solid rgba(0,0,0,.12);box-shadow:none}.project-title{margin:0;font-family:var(--font-sans);font-size:22px;font-weight:700;line-height:1.2}.project-description{margin:0;font-size:14px;line-height:1.45;color:var(--color-text)}.project-tags{display:flex;flex-wrap:wrap;gap:8px}.project-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fff;font-size:12px;font-weight:600;box-shadow:inset 0 0 0 1px #00000014}.project-stats-row{display:flex;align-items:center;gap:12px}.project-stat-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--color-text);cursor:pointer}.project-stat-btn.is-active{color:#e02424}.project-stat-btn.is-active svg{fill:#e02424;stroke:#e02424}.project-location-pill{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;padding:12px 14px;border-radius:999px;background:#fff;font-size:13px;font-weight:600;box-shadow:inset 0 0 0 1px #00000014}.project-location-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-location-chevron{flex:0 0 auto;color:var(--color-text-muted)}.project-view-ar-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;border:none;border-radius:14px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:15px;font-weight:700;cursor:pointer}.project-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.project-action-row .project-action-secondary{width:100%}.project-action-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:none;border-radius:14px;background:#fff;font-family:var(--font-sans);font-size:14px;font-weight:700;box-shadow:inset 0 0 0 1px #0000001a;cursor:pointer}.project-action-secondary.is-active{color:var(--color-primary)}.project-action-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;border:none;border-radius:14px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:14px;font-weight:700;cursor:pointer}.project-download-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;border:none;border-radius:14px;background:#fff;font-family:var(--font-sans);font-size:14px;font-weight:600;box-shadow:inset 0 0 0 1px #0000001a;cursor:pointer}.project-share-extras{display:flex;flex-direction:column;gap:8px}.profile-saved-empty{grid-column:1 / -1;margin:0;font-size:14px;color:var(--color-text-muted)}.project-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-section-title{margin:0;font-size:16px;font-weight:700}.project-section-link{border:none;background:transparent;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--color-text-muted);cursor:pointer}.project-comments{display:flex;flex-direction:column;gap:10px}.project-comments-list{display:flex;flex-direction:column;gap:8px}.project-comment{display:flex;gap:10px;padding:10px 12px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.project-comment-avatar{flex:0 0 32px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:#e5e7eb;font-size:11px;font-weight:700;color:var(--color-text-muted)}.project-comment-author{margin:0;font-size:13px;font-weight:700}.project-comment-text{margin:2px 0 0;font-size:13px;line-height:1.35}.project-comment-compose{display:flex;gap:8px}.project-comment-input{flex:1;min-width:0;padding:10px 12px;border:none;border-radius:12px;background:#fff;font-family:var(--font-sans);font-size:var(--font-size-field);box-shadow:inset 0 0 0 1px #0000001a}.project-comment-post{flex:0 0 auto;min-height:40px;padding:0 14px;border:none;border-radius:12px;background:var(--color-primary);color:#fff;font-family:var(--font-sans);font-size:13px;font-weight:700;cursor:pointer}.project-more-row{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.project-more-tile{position:relative;flex:0 0 120px;border:none;padding:0;border-radius:12px;overflow:hidden;cursor:pointer}.project-more-badge{position:absolute;left:8px;bottom:8px;padding:4px 8px;border-radius:999px;background:#ffffffeb;font-size:10px;font-weight:700;box-shadow:0 1px 4px #0000001f}.project-more-thumb{display:block;width:120px;height:90px;object-fit:cover}.project-owner-badges{display:flex;flex-wrap:wrap;gap:8px}.project-badge-published{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#ecfdf3;color:#067647;font-size:12px;font-weight:700}.project-badge-dot{width:8px;height:8px;border-radius:999px;background:#12b76a}.project-updated{margin:0;font-size:12px;color:var(--color-text-muted)}.project-owner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.project-owner-stat{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.project-owner-stat-value{font-size:15px;font-weight:700}.project-owner-stat-label{font-size:11px;color:var(--color-text-muted)}.project-owner-actions{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.project-owner-action{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:none;background:transparent;font-family:var(--font-sans);font-size:14px;font-weight:600;text-align:left;cursor:pointer}.project-owner-action:disabled{opacity:.55;cursor:default}.project-location-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.project-location-edit{border:none;background:transparent;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--color-primary);cursor:pointer}.project-settings-card{display:flex;flex-direction:column;gap:12px;padding:12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px #0000000f}.project-setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-setting-label{margin:0;font-size:14px;font-weight:700}.project-setting-hint{margin:2px 0 0;font-size:12px;color:var(--color-text-muted)}.project-setting-item{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;border:none;background:transparent;font-family:var(--font-sans);font-size:14px;font-weight:600;text-align:left;cursor:pointer}.project-setting-item:disabled{opacity:.55;cursor:default}.project-settings-footer{display:flex;flex-direction:column;gap:8px}.project-settings-footer .project-settings-btn{flex-direction:row;justify-content:center;min-height:var(--touch-min);width:100%;font-size:14px}.project-settings-btn{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:64px;padding:8px 4px;border:none;border-radius:12px;background:#f8f8f8;font-family:var(--font-sans);font-size:11px;font-weight:600;cursor:pointer}.project-settings-btn.is-danger{color:#d92d20}.project-settings-btn:disabled{opacity:.55;cursor:default}
