.fx-modal-overlay{z-index:9999;padding:var(--fx-space-8) var(--fx-space-4);background-color:#0009;justify-content:center;align-items:safe center;animation:.2s ease-out forwards fx-fade-in;display:flex;position:fixed;inset:0;overflow-y:auto}.fx-modal-content{background-color:var(--fx-color-surface);border-radius:var(--fx-radius-lg);box-shadow:var(--fx-shadow-xl);width:auto;max-width:100%;max-height:90vh;animation:.3s ease-out forwards fx-slide-up;position:relative;overflow-y:auto}.fx-modal-close{top:var(--fx-space-3);right:var(--fx-space-3);cursor:pointer;color:var(--fx-color-text-muted);padding:var(--fx-space-1);border-radius:var(--fx-radius-full);z-index:10;background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .2s;display:flex;position:absolute}.fx-modal-close:hover{background-color:var(--fx-color-surface-muted);color:var(--fx-color-text)}.x-download-modal{text-align:center;border-top:6px solid var(--fx-primary-600);max-width:440px;margin:0 auto;padding:3.5rem 2.5rem}.x-download-modal-icon{background:var(--fx-primary-50);width:64px;height:64px;margin-bottom:var(--fx-space-6);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.x-download-modal-icon .material-symbols-outlined{color:var(--fx-primary-600);font-size:2rem}.x-download-modal h2{margin:0 0 var(--fx-space-4);font-family:var(--fx-font-heading);letter-spacing:-.03em;color:var(--fx-color-heading);font-size:2rem}.x-download-modal p{margin:0 auto var(--fx-space-10);max-width:40ch;color:var(--fx-color-text-muted);font-size:1.05rem;line-height:1.5}.x-download-modal-badges{gap:var(--fx-space-4);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.x-download-modal-badges img{object-fit:contain;height:45px}.x-download-modal-skip{margin-top:var(--fx-space-8);color:var(--fx-color-text-muted);font-weight:var(--fx-font-weight-medium);cursor:pointer;background:0 0;border:none;font-size:.95rem}.x-share-modal{text-align:center;border-top:6px solid var(--fx-secondary-600);max-width:440px;padding:3.5rem 2.5rem}.x-share-modal-icon{background:var(--fx-secondary-50);width:64px;height:64px;margin-bottom:var(--fx-space-6);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.x-share-modal-icon .material-symbols-outlined{color:var(--fx-secondary-600);font-size:2rem}.x-share-modal h2{margin:0 0 var(--fx-space-4);font-family:var(--fx-font-heading);letter-spacing:-.03em;color:var(--fx-color-heading);font-size:2rem}.x-share-modal p{margin:0 auto var(--fx-space-8);max-width:40ch;color:var(--fx-color-text-muted);font-size:1.05rem;line-height:1.5}.x-share-modal-btn{padding:.9rem 2rem;font-size:1rem}.x-share-modal-skip{margin-top:var(--fx-space-6);color:var(--fx-color-text-muted);font-weight:var(--fx-font-weight-medium);cursor:pointer;background:0 0;border:none;font-size:.95rem}.x-interstitial{z-index:10000;padding:var(--fx-space-6);background:var(--fx-color-surface);justify-content:center;align-items:center;animation:.2s ease-out forwards fx-fade-in;display:flex;position:fixed;inset:0}.x-interstitial-content{text-align:center;max-width:360px}.x-interstitial-copy{font-size:1.15rem;font-weight:var(--fx-font-weight-semibold);color:var(--fx-color-heading);margin:0 0 var(--fx-space-6)}.x-interstitial-primary{justify-content:center;width:100%}.x-interstitial-fallback{margin:var(--fx-space-5) 0 0;color:var(--fx-color-text-muted);font-size:.9rem}.x-interstitial-continue{margin-top:var(--fx-space-8);color:var(--fx-color-text-muted);font-weight:var(--fx-font-weight-medium);cursor:pointer;background:0 0;border:none;font-size:.9rem;text-decoration:underline}@keyframes fx-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fx-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.auth-modal{width:100%;max-width:850px;overflow:hidden;padding:0!important}.auth-modal-split{flex-direction:row;min-height:550px;display:flex}.auth-modal-visual{background-color:var(--fx-primary-600);color:var(--fx-color-text-inverse);padding:var(--fx-space-10);text-align:left;background-image:linear-gradient(135deg, var(--fx-primary-600), var(--fx-primary-800));flex-direction:column;flex:1;justify-content:flex-start;display:flex}.auth-modal-visual-content h2{font-family:var(--fx-font-heading);font-size:var(--fx-text-hero);margin-bottom:var(--fx-space-10);font-weight:var(--fx-font-weight-bold);letter-spacing:-.03em;line-height:var(--fx-leading-tight)}.auth-modal-visual-content ul{margin:0;padding:0;list-style:none}.auth-modal-visual-content li{align-items:flex-start;gap:var(--fx-space-3);margin-bottom:var(--fx-space-4);font-size:var(--fx-text-body-lg);display:flex}.auth-modal-visual-content .material-symbols-outlined{margin-top:2px;font-size:1.2rem}.auth-modal-form-container{padding:var(--fx-space-10);background-color:var(--fx-color-surface);flex-direction:column;flex:1;justify-content:center;display:flex}.auth-modal-form-container h3{font-family:var(--fx-font-heading);font-size:var(--fx-text-section-title);font-weight:var(--fx-font-weight-bold);letter-spacing:-.02em;margin-bottom:var(--fx-space-2)}.auth-subtitle{color:var(--fx-color-text-muted);margin-bottom:var(--fx-space-8);font-size:var(--fx-text-body)}.auth-subtitle a,.auth-terms a{color:var(--fx-primary-600);text-decoration:underline}.auth-buttons{gap:var(--fx-space-3);flex-direction:column;display:flex}.auth-btn{width:100%;padding:var(--fx-space-3) var(--fx-space-5);border-radius:var(--fx-radius-full);font-size:var(--fx-text-body-lg);font-weight:var(--fx-font-weight-bold);letter-spacing:-.01em;cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;transition:transform .14s,background .14s,box-shadow .14s,color .14s;display:flex;position:relative}.auth-btn:active{transform:translateY(1px)}.auth-btn-social{background-color:var(--fx-color-surface);border-color:var(--fx-color-border-subtle);color:var(--fx-color-text)}.auth-btn-social:hover{background-color:var(--fx-color-surface-muted);transform:translateY(-2px)}.auth-icon{left:var(--fx-space-4);justify-content:center;align-items:center;display:flex;position:absolute}.auth-divider{text-align:center;margin:var(--fx-space-6) 0;font-size:var(--fx-text-body);color:var(--fx-color-text-subtle);justify-content:center;align-items:center;gap:var(--fx-space-2);display:flex}.auth-link-btn{color:var(--fx-primary-600);cursor:pointer;font-size:var(--fx-text-body);font-weight:var(--fx-font-weight-medium);background:0 0;border:none;padding:0;text-decoration:underline}.auth-email-form{gap:var(--fx-space-3);flex-direction:column;display:flex}.auth-input{border:1px solid var(--fx-color-border-subtle);border-radius:var(--fx-radius-xl);background:var(--fx-color-surface);font-family:var(--fx-font-body);font-size:var(--fx-text-body-lg);color:var(--fx-color-text);outline:none;width:100%;padding:.85rem 1rem;transition:border-color .14s,box-shadow .14s}.auth-input::placeholder{color:var(--fx-color-text-subtle)}.auth-input:focus{border-color:var(--fx-primary-400);box-shadow:0 0 0 4px #6366f126}.auth-btn-primary{background-color:var(--fx-primary-600);color:var(--fx-color-text-inverse);box-shadow:0 10px 24px -8px #4f46e5a6}.auth-btn-primary:hover{background-color:var(--fx-primary-500);transform:translateY(-2px)}.auth-btn-primary-vendor{background-color:var(--fx-secondary-600);box-shadow:0 10px 24px -8px #0d948880}.auth-btn-primary-vendor:hover{background-color:var(--fx-secondary-500)}.auth-terms{margin-top:var(--fx-space-8);font-size:var(--fx-text-meta);color:var(--fx-color-text-subtle);line-height:var(--fx-leading-normal)}.auth-error{background-color:var(--fx-error-light);color:var(--fx-error-dark);padding:var(--fx-space-3);border-radius:var(--fx-radius-md);margin-bottom:var(--fx-space-4);font-size:var(--fx-text-body)}@media (max-width:768px){.auth-modal-split{flex-direction:column;min-height:auto}.auth-modal-visual{display:none}.auth-modal-form-container{padding:var(--fx-space-6) var(--fx-space-4)}}.auth-role-selection{flex-direction:column;justify-content:center;height:100%;display:flex}.auth-role-buttons{gap:var(--fx-space-4);margin-top:var(--fx-space-6);flex-direction:column;display:flex}.auth-role-btn{padding:var(--fx-space-6);border:2px solid var(--fx-color-border-subtle);border-radius:var(--fx-radius-lg);background-color:var(--fx-color-surface);cursor:pointer;color:var(--fx-color-text);flex-direction:column;align-items:center;transition:all .2s;display:flex}.auth-role-btn:hover{border-color:var(--fx-primary-600);background-color:var(--fx-primary-50)}.auth-role-btn .role-icon{color:var(--fx-primary-600);margin-bottom:var(--fx-space-2);font-size:3rem}.auth-role-btn strong{font-size:var(--fx-text-body-lg);margin-bottom:var(--fx-space-1)}.auth-role-btn span{font-size:var(--fx-text-body);color:var(--fx-color-text-subtle)}.auth-role-btn:disabled{opacity:.6;cursor:not-allowed}.auth-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}
