.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border);z-index:1000;flex-direction:column;height:100vh;padding:1.5rem;display:flex;position:fixed}@media (width<=1024px){.sidebar{display:none}}.brand-container{flex-direction:column;align-items:flex-start;gap:.3rem;margin-bottom:1.5rem;display:flex}.sidebar .plan-badge{border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:.3rem;padding:.25rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex;position:static;top:auto;left:auto;transform:none}.sidebar .plan-badge.pro{color:#78350f;background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%)}.sidebar .plan-badge.essentiel{background:linear-gradient(135deg, var(--accent) 0%, #4f46e5 100%);color:#fff}.sidebar .brand{color:var(--accent);margin:0;font-size:1.75rem}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;margin-top:2rem;list-style:none;display:flex}.nav-item{cursor:pointer;border-radius:var(--radius-sm);color:var(--text-secondary);align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;transition:all .2s;display:flex;position:relative}.nav-badge{background:var(--gold);color:#fff;border-radius:var(--radius-sm);justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;font-size:.68rem;font-weight:700;display:inline-flex}.nav-item.active .nav-badge{color:#fff;background:#ffffff4d}.nav-item.active{background:var(--accent);color:#fff}.nav-item:hover{background:var(--border);color:var(--text-primary)}.user-section{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;margin-top:auto;padding-top:1.5rem;display:flex}.credits-badge{background:linear-gradient(135deg, var(--bg-tertiary) 0%, var(--bg-secondary) 100%);border-radius:var(--radius-sm);text-align:center;border:1px solid var(--gold);color:var(--gold-dark);justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:flex}.credits-badge>svg:first-child{border-radius:var(--radius-xs);box-sizing:content-box;background:#d4a24c26;flex-shrink:0;padding:3px}.credits-badge.unlimited{border-color:var(--color-warning);color:#78350f;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%)}.credits-badge.unlimited>svg:first-child{background:#fbbf2440}.credits-badge.quota{border-color:var(--accent);color:#4338ca;background:linear-gradient(135deg,#e0e7ff 0%,#c7d2fe 100%)}.credits-badge.quota>svg:first-child{background:#6366f126}.theme-toggle{border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.5rem;transition:all .2s;display:flex}.theme-toggle:hover{background:var(--border);color:var(--text-primary)}.logout-btn{color:var(--color-error);border-color:var(--color-error)}.logout-btn:hover{background:#ef44441a}.nav-item-icon-wrapper{display:inline-flex;position:relative}.nav-new-dot{background:var(--color-error);border:2px solid var(--bg-secondary);border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-4px}.nav-item.active .nav-new-dot{border-color:var(--accent)}.bottom-nav{display:none}@media (width<=1024px){.bottom-nav{background:var(--card-bg);border-top:1px solid var(--border);z-index:1000;justify-content:space-around;align-items:center;height:70px;transition:transform .3s;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav--hidden{transform:translateY(100%)}.nav-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);padding:.5rem;transition:color .2s}.nav-btn-active{color:var(--accent)}.nav-btn-main{background:var(--accent);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;margin-top:-30px;display:flex;box-shadow:0 4px 10px #2563eb4d}.nav-btn-wrapper{display:inline-flex;position:relative}.nav-btn-wrapper .nav-new-dot{background:var(--color-error);border-radius:50%;width:7px;height:7px;position:absolute;top:-2px;right:-4px}.nav-account-badge{border:2px solid var(--card-bg);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.6rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-5px;right:-10px}.nav-account-badge--default{background:var(--gold)}.nav-account-badge--pro{color:#78350f;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.nav-account-badge--essentiel{background:linear-gradient(135deg, var(--accent), #4f46e5)}.nav-account-badge--zero{background:#dc2626}}.price-mode-toggle{background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border);width:fit-content;padding:3px;display:flex}.price-mode-btn{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:background .2s,color .2s}.price-mode-btn.active{background:var(--accent);color:#fff}.price-mode-btn:not(.active):hover{color:var(--text-primary)}.camera-capture-overlay{z-index:9999;-webkit-user-select:none;user-select:none;background:#0a0a0a;flex-direction:column;display:flex;position:fixed;inset:0}.camera-capture-header{padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);background:#000c;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.camera-capture-close{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:background .2s;display:flex}.camera-capture-close:hover{background:#ffffff26}.camera-capture-close:active{background:#ffffff40}.camera-capture-title{color:#fff;font-family:Manrope,sans-serif;font-size:1rem;font-weight:600}.camera-capture-spacer{width:40px}.camera-capture-body{flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.camera-capture-video-container{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.camera-capture-video{object-fit:cover;width:100%;height:100%}.camera-capture-preview{object-fit:contain;max-width:100%;max-height:100%}.camera-capture-loading{color:#fff;flex-direction:column;align-items:center;gap:16px;display:flex}.camera-capture-spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.camera-capture-loading p{opacity:.8;font-family:Manrope,sans-serif;font-size:.95rem}.camera-capture-error{color:#fff;text-align:center;flex-direction:column;align-items:center;gap:20px;padding:24px;display:flex}.camera-capture-error>svg{color:#ef4444;opacity:.8}.camera-capture-error-message{opacity:.9;max-width:320px;font-family:Manrope,sans-serif;font-size:.95rem;line-height:1.5}.camera-capture-fallback-btn{border-radius:var(--radius-md,8px);color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;align-items:center;gap:8px;padding:12px 24px;font-family:Manrope,sans-serif;font-size:.9rem;font-weight:600;transition:background .2s,border-color .2s;display:flex}.camera-capture-fallback-btn:hover{background:#fff3;border-color:#fff6}.camera-capture-fallback-btn:active{transform:scale(.97)}.camera-capture-controls{padding:24px 16px;padding-bottom:max(24px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px);background:#000c;flex-shrink:0;justify-content:center;align-items:center;gap:32px;display:flex}.camera-capture-shutter{cursor:pointer;background:0 0;border:4px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;padding:0;transition:transform .15s,border-color .2s;display:flex}.camera-capture-shutter-inner{background:#fff;border-radius:50%;width:56px;height:56px;transition:background .15s,transform .15s}.camera-capture-shutter:hover .camera-capture-shutter-inner{background:#ffffffd9}.camera-capture-shutter:active{transform:scale(.92)}.camera-capture-shutter:active .camera-capture-shutter-inner{background:#d4a24c;transform:scale(.88)}.camera-capture-btn{border-radius:var(--radius-md,8px);cursor:pointer;border:none;align-items:center;gap:8px;padding:14px 28px;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:600;transition:transform .15s,opacity .2s;display:flex}.camera-capture-btn:active{transform:scale(.97)}.camera-capture-btn-secondary{color:#fff;background:#ffffff26;border:1px solid #ffffff4d}.camera-capture-btn-secondary:hover{background:#ffffff40}.camera-capture-btn-primary{color:#fff;background:#1f4d3a}.camera-capture-btn-primary:hover{opacity:.95;background:#2a6b50}@media (orientation:landscape) and (height<=500px){.camera-capture-header{padding:8px 16px;padding-top:max(8px, env(safe-area-inset-top))}.camera-capture-controls{padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom))}.camera-capture-shutter{width:56px;height:56px}.camera-capture-shutter-inner{width:42px;height:42px}.camera-capture-btn{padding:10px 20px;font-size:.85rem}}.uploader-processing{background:var(--bg-secondary);border:2px dashed var(--border);border-radius:var(--radius-xl);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3rem 2rem;display:flex}.uploader-processing p{color:var(--text-secondary);margin:0;font-size:.9rem}.uploader-processing-spinner{color:var(--accent);animation:1s linear infinite spin}.uploader-empty{border:2px dashed var(--border);border-radius:var(--radius-xl);background:var(--bg-secondary);padding:2rem;transition:border-color .2s,background .2s}.uploader-empty:hover,.uploader-dragging{border-color:var(--accent);background:var(--border)}.uploader-desktop-zone{cursor:pointer;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.uploader-desktop-zone h3{margin:0;font-size:1.1rem}.uploader-desktop-zone p{color:var(--text-secondary);margin:0;font-size:.85rem}.uploader-icon-box{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;display:flex}.uploader-mobile-actions{gap:1rem;width:100%;display:flex}.uploader-action-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--card-bg);color:var(--text-primary);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:.5rem;padding:1.5rem 1rem;font-size:.85rem;font-weight:500;transition:background .2s,border-color .2s;display:flex}.uploader-action-btn:active{background:var(--border)}.uploader-action-camera{color:var(--accent);border-color:var(--accent)}.uploader-action-camera:active{background:#2563eb0d}.uploader-action-hint{color:var(--text-secondary);opacity:.7;font-size:.7rem}.uploader-with-photos{flex-direction:column;gap:1rem;display:flex}.uploader-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}@media (width>=769px){.uploader-grid{grid-template-columns:repeat(5,1fr)}}.uploader-thumb{aspect-ratio:1;border-radius:var(--radius-md);border:1px solid var(--border);position:relative;overflow:hidden}.uploader-thumb img{object-fit:cover;width:100%;height:100%}.uploader-thumb-remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:background .2s;display:flex;position:absolute;top:4px;right:4px}.uploader-thumb-remove:hover{background:var(--color-error)}.uploader-thumb-number{color:#fff;background:#00000080;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.65rem;font-weight:600;display:flex;position:absolute;bottom:4px;left:4px}.uploader-thumb-add{background:var(--bg-secondary);border:2px dashed var(--border);cursor:pointer;justify-content:center;align-items:center;transition:border-color .2s;display:flex}.uploader-thumb-add:hover{border-color:var(--accent)}.uploader-add-desktop{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:100%;height:100%;font-size:.7rem;display:flex}.uploader-add-mobile{align-items:center;gap:.5rem;display:flex}.uploader-add-btn{border:1px solid var(--border);background:var(--card-bg);width:36px;height:36px;color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex}.uploader-add-btn:active{background:var(--border)}.uploader-description{margin-top:.25rem}.uploader-description-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:.3rem 0;font-size:.8rem;transition:color .2s;display:flex}.uploader-description-toggle:hover{color:var(--accent)}.uploader-description-input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);width:100%;color:var(--text-primary);resize:vertical;min-height:70px;margin-top:.4rem;padding:.75rem 1rem;font-family:inherit;font-size:.85rem;transition:border-color .2s}.uploader-description-input:focus{border-color:var(--accent);outline:none}.uploader-description-input::placeholder{color:var(--text-secondary);opacity:.7}.uploader-footer{align-items:center;gap:1rem;display:flex}.uploader-footer--sticky{background:var(--bg-primary,#fff);border-top:1px solid var(--border);z-index:5;margin-top:.5rem;padding:.75rem 0;position:sticky;bottom:0}.uploader-count{color:var(--text-secondary);white-space:nowrap;font-size:.8rem;font-weight:500}.uploader-start{flex:1}@media (width<=768px){.uploader-empty{padding:1.25rem}.uploader-grid{gap:.4rem}.uploader-thumb{border-radius:var(--radius-sm)}.uploader-footer{flex-direction:column;gap:.75rem}.uploader-count{align-self:flex-start}.uploader-start{width:100%}}.dashboard-hero{flex-direction:column;gap:1.25rem;display:flex}.dashboard-hero-header{flex-direction:column;gap:.5rem;display:flex}.dashboard-hero-title{color:var(--text-primary);font-size:1.25rem;font-weight:700}.dashboard-hero-subtitle{color:var(--text-secondary);font-size:.9rem}.dashboard-hero-features{flex-direction:column;gap:.4rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.dashboard-hero-features li{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.dashboard-hero-check{color:var(--accent);box-sizing:content-box;background:#1f4d3a14;border-radius:50%;flex-shrink:0;padding:3px}.dashboard-hero-tip{border-radius:var(--radius-sm);color:var(--text-secondary);background:#2563eb0d;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;font-size:.82rem;line-height:1.4;display:flex}.dashboard-hero-tip svg{color:var(--accent);border-radius:var(--radius-sm);box-sizing:content-box;background:#1f4d3a14;flex-shrink:0;padding:5px}[data-theme=dark] .dashboard-hero-tip{background:#3b82f614}@media (width<=768px){.dashboard-hero-title{font-size:1.1rem}}.install-banner{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#1f4d3a 0%,#2e6b4f 100%);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1.25rem;animation:.4s ease-out installBannerSlideIn;display:flex;position:relative;box-shadow:0 4px 12px #1f4d3a40}@keyframes installBannerSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.install-banner-content{flex:1;align-items:center;gap:.75rem;display:flex}.install-banner-icon{opacity:.9;flex-shrink:0}.install-banner-text{font-size:.85rem;line-height:1.4}.install-banner-text strong{font-weight:600}.install-banner-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.install-banner-btn{border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.install-banner-btn--primary{color:var(--accent,#1f4d3a);background:#fff;border:1px solid #fff}.install-banner-btn--primary:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.install-banner-btn--primary:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}.install-banner-btn--secondary{color:#fff;background:#ffffff26;border:1px solid #ffffff4d}.install-banner-btn--secondary:hover{background:#ffffff40;transform:translateY(-1px)}.install-banner-btn--tertiary{color:#fff;background:#ffffff1a;border:1px solid #fff3;font-size:.7rem}.install-banner-btn--tertiary:hover{background:#fff3}.install-banner-close{color:#ffffffb3;cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:.25rem;transition:color .2s;display:flex}.install-banner-close:hover{color:#fff}.install-banner--mobile{text-align:left;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.install-banner--mobile .install-banner-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.install-banner--success{background:linear-gradient(135deg,#1f4d3a 0%,#2e8b57 100%);border:2px solid #fff3}.install-banner--success .install-banner-close{color:#fffc}.install-banner--success .install-banner-close:hover{color:#fff}.install-banner--subtle{color:var(--text-primary,#2a2520);box-shadow:none;background:#1f4d3a14;border:1px solid #1f4d3a26;padding:.6rem 1rem}.install-banner--subtle .install-banner-btn--primary{background:var(--accent,#1f4d3a);color:#fff;border:none}.install-banner--subtle .install-banner-close{color:var(--text-secondary,#5c524a)}@media (width<=768px){.install-banner{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.install-banner-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.install-banner-close{position:absolute;top:.5rem;right:.5rem}}.install-ext-banner{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#2d5a8e 0%,#4a7db5 100%);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1.25rem;animation:.4s ease-out installExtSlideIn;display:flex;position:relative;box-shadow:0 4px 12px #2d5a8e40}@keyframes installExtSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.install-ext-banner--success{background:linear-gradient(135deg,#1f4d3a 0%,#2e8b57 100%)}.install-ext-banner-content{flex:1;align-items:center;gap:.75rem;display:flex}.install-ext-banner-icon{border-radius:var(--radius-sm);background:#ffffff26;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.install-ext-banner--success .install-ext-banner-icon{background:0 0;font-size:1.3rem}.install-ext-banner-text{font-size:.85rem;line-height:1.4}.install-ext-banner-text strong{margin-bottom:.1rem;font-weight:600;display:block}.install-ext-banner-text span{opacity:.9;font-size:.8rem}.install-ext-banner-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.install-ext-banner-btn{border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.install-ext-banner-btn--primary{color:#2d5a8e;background:#fff;border:1px solid #fff}.install-ext-banner-btn--primary:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.install-ext-banner-btn--disabled{color:#ffffffb3;cursor:not-allowed;background:#ffffff26;border:1px solid #fff3}.install-ext-banner-close{color:#ffffffb3;cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;padding:.25rem;transition:color .2s;display:flex}.install-ext-banner-close:hover{color:#fff}@media (width<=768px){.install-ext-banner{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.install-ext-banner-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.install-ext-banner-close{position:absolute;top:.5rem;right:.5rem}}.qm-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;padding:1rem;animation:.25s ease-out qmFadeIn;display:flex;position:fixed;inset:0}@keyframes qmFadeIn{0%{opacity:0}to{opacity:1}}.qm-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg,16px);box-shadow:var(--shadow-xl,0 20px 60px #0003);text-align:center;width:100%;max-width:440px;padding:2rem 2rem 1.75rem;animation:.35s cubic-bezier(.34,1.56,.64,1) qmSlideUp;position:relative}.qm-card--dismissible{box-shadow:var(--shadow-lg,0 10px 40px #00000026)}@keyframes qmSlideUp{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.qm-close{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:.35rem;transition:color .15s,background .15s;display:flex;position:absolute;top:.75rem;right:.75rem}.qm-close:hover{color:var(--text-primary);background:var(--bg-tertiary)}.qm-icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1rem;display:flex}.qm-icon--warning{color:var(--color-warning);background:#f59e0b1f}.qm-icon--error{color:var(--color-error);background:#ef44441f}.qm-title{color:var(--text-primary);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.qm-body{color:var(--text-secondary);margin:0 0 1rem;font-size:.9rem;line-height:1.55}.qm-body strong{color:var(--text-primary);font-weight:600}.qm-hint{color:var(--text-secondary);opacity:.75;margin:0 0 .75rem;font-size:.78rem;font-style:italic}.qm-feature-list{color:var(--text-secondary);margin:.5rem 0 0;font-size:.78rem;line-height:1.5}.qm-feature-list strong{color:var(--text-primary)}.qm-stats{background:var(--bg-tertiary);border-radius:var(--radius-md);justify-content:center;align-items:center;gap:0;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.qm-stat{flex-direction:column;flex:1;align-items:center;gap:.15rem;display:flex}.qm-stat--full{flex:none;width:100%}.qm-stat-value{color:var(--color-error);font-size:1.4rem;font-weight:700}.qm-stat-value--error{color:var(--color-error)}.qm-stat-value--ok{color:var(--color-success)}.qm-stat-label{color:var(--text-secondary);font-size:.72rem}.qm-stat-divider{background:var(--border);width:1px;height:32px}.qm-actions{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.qm-btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .2s,opacity .15s;display:flex}.qm-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.qm-btn:active{transform:scale(.97)}.qm-btn--primary{background:linear-gradient(135deg, var(--accent,#1f4d3a), var(--accent-light,#2e6b4f));color:#fff;box-shadow:0 2px 8px #1f4d3a4d}.qm-btn--secondary{color:var(--text-primary);border:1px solid var(--border);background:0 0}.qm-btn--secondary:hover{background:var(--bg-tertiary)}.qm-guarantee{color:var(--text-secondary);opacity:.6;margin:0;font-size:.72rem}[data-theme=dark] .qm-overlay{background:#000000b3}[data-theme=dark] .qm-card{box-shadow:0 20px 60px #00000080}@media (width<=768px){.qm-card{max-width:calc(100vw - 2rem);padding:1.5rem 1.25rem 1.25rem}.qm-title{font-size:1.1rem}.qm-body{font-size:.85rem}.qm-btn{padding:.7rem 1rem;font-size:.85rem}}.low-credits-banner{border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1.25rem;display:flex}.low-credits-banner.warning{background:#f59e0b14;border:1px solid #f59e0b4d}.low-credits-banner.error{background:#ef444414;border:1px solid #ef44444d}.low-credits-banner.overage{background:#ef44441a;border:1px solid #ef444459}.low-credits-content{align-items:center;gap:.6rem;font-size:.85rem;font-weight:500;display:flex}.low-credits-banner.warning .low-credits-content{color:var(--color-warning)}.low-credits-banner.error .low-credits-content,.low-credits-banner.overage .low-credits-content{color:var(--color-error)}.low-credits-content svg{flex-shrink:0}.banner-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.low-credits-btn{color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.8rem;font-weight:600;transition:background .2s,transform .15s,box-shadow .2s;display:flex}.low-credits-btn.secondary{background:0 0;border:1px solid}.low-credits-banner.warning .low-credits-btn.secondary:hover,.low-credits-btn.secondary:hover{background:#0000000f}.low-credits-banner.warning .low-credits-btn{background:var(--color-warning)}.low-credits-banner.warning .low-credits-btn:hover{background:#b45309}.low-credits-banner.error .low-credits-btn,.low-credits-banner.overage .low-credits-btn.primary{background:var(--color-error)}.low-credits-banner.error .low-credits-btn:hover,.low-credits-banner.overage .low-credits-btn.primary:hover{background:#b91c1c}.low-credits-banner.warning .low-credits-btn.secondary{color:var(--color-warning)}.low-credits-banner.error .low-credits-btn.secondary,.low-credits-banner.overage .low-credits-btn.secondary{color:var(--color-error)}@media (width<=768px){.low-credits-banner{flex-direction:column;align-items:flex-start;gap:.75rem}.banner-actions{flex-direction:column;width:100%}.low-credits-btn{text-align:center;justify-content:center;width:100%}}.post-cta{margin-top:1.5rem}.post-cta-divider{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.post-cta-divider:before,.post-cta-divider:after{content:"";background:var(--border);flex:1;height:1px}.post-cta-divider span{color:var(--text-secondary);white-space:nowrap;font-size:.8rem;font-weight:600}.post-cta-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.post-cta-card{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.post-cta-icon{color:var(--accent)}.post-cta-card h4{color:var(--text-primary);margin:0;font-size:.9rem;font-weight:600}.post-cta-card p{color:var(--text-secondary);flex:1;margin:0;font-size:.82rem;line-height:1.4}.post-cta-btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);margin-top:.5rem;padding:.5rem .75rem;font-size:.8rem;font-weight:600;transition:background .2s}.post-cta-btn:disabled{opacity:.6;cursor:not-allowed}.post-cta-btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-color:#0000;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #1f4d3a40}.post-cta-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1f4d3a59}@media (width<=768px){.post-cta-grid{grid-template-columns:1fr}}.post-cta--twa{margin-top:1.5rem}.post-cta-twa-card{border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#1f4d3a0f,#d4a24c0d);border:1px solid #1f4d3a2e;align-items:center;gap:.85rem;padding:1rem 1.1rem;transition:background .2s,border-color .2s,transform .15s;display:flex}.post-cta-twa-card:hover{border-color:var(--accent);background:linear-gradient(135deg,#1f4d3a1a,#d4a24c14);transform:translateY(-1px)}.post-cta-twa-card:active{transform:scale(.98)}[data-theme=dark] .post-cta-twa-card{background:linear-gradient(135deg,#2e6b4f14,#e5bc6f0d);border-color:#2e6b4f40}[data-theme=dark] .post-cta-twa-card:hover{background:linear-gradient(135deg,#2e6b4f24,#e5bc6f1a)}.post-cta-twa-icon{color:var(--accent);flex-shrink:0;align-items:center;display:flex}.post-cta-twa-body{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.post-cta-twa-body strong{color:var(--text-primary);font-size:.88rem;font-weight:600}.post-cta-twa-body span{color:var(--text-secondary);font-size:.78rem;line-height:1.35}.post-cta-twa-arrow{color:var(--text-secondary);opacity:.6;flex-shrink:0;transition:opacity .2s,transform .2s}.post-cta-twa-card:hover .post-cta-twa-arrow{opacity:1;transform:translate(2px)}.post-cta-twa-cta{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.65rem;padding:.7rem 1rem;font-size:.85rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 8px #1f4d3a40}.post-cta-twa-cta:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1f4d3a59}.post-cta-twa-cta:active{transform:translateY(0)}.pending-card{background:var(--card-bg,#fff);border:1px solid var(--border-color,#e5e7eb);border-radius:var(--radius-md);cursor:default;align-items:center;gap:12px;padding:12px 16px;transition:box-shadow .2s,border-color .2s;display:flex}.pending-card--completed{cursor:pointer}.pending-card--completed:hover{border-color:var(--primary-color,#6366f1);box-shadow:0 2px 8px #6366f11f}.pending-card--error{border-color:var(--color-error);background:#fef2f2}.pending-card__thumbnail{border-radius:var(--radius-sm);background:var(--bg-secondary,#f3f4f6);flex-shrink:0;width:56px;height:56px;overflow:hidden}.pending-card__thumbnail img{object-fit:cover;width:100%;height:100%}.pending-card__placeholder{width:100%;height:100%;color:var(--text-secondary,#9ca3af);justify-content:center;align-items:center;display:flex}.pending-card__body{flex:1;min-width:0}.pending-card__title{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary,#111827);margin:0 0 4px;font-size:.9rem;font-weight:600;overflow:hidden}.pending-card__status{align-items:center;gap:6px;display:flex}.pending-card__spinner{border:2px solid var(--border-color,#e5e7eb);border-top-color:var(--primary-color,#6366f1);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite pending-spin}@keyframes pending-spin{to{transform:rotate(360deg)}}.pending-card__error-icon{font-size:14px;line-height:1}.pending-card__status-label{color:var(--text-secondary,#6b7280);font-size:.8rem}.pending-card__status-label--pending,.pending-card__status-label--processing{color:var(--color-warning)}.pending-card__status-label--completed{color:var(--color-success);font-weight:600}.pending-card__status-label--error{color:var(--color-error)}.pending-card__action{color:var(--text-secondary,#9ca3af);flex-shrink:0;align-items:center;display:flex}.pending-card__dismiss{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--text-secondary,#9ca3af);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;transition:background .15s,color .15s;display:flex}.pending-card__dismiss:hover{color:var(--color-error);background:#ef44441a}.pending-tasks-section{margin-bottom:24px}.pending-tasks-section__title{color:var(--text-primary,#111827);margin:0 0 12px;font-size:1.1rem;font-weight:700}.pending-tasks-section__grid{flex-direction:column;gap:8px;display:flex}.pending-card__progress{justify-content:space-between;align-items:center;margin-top:6px;padding:6px 2px 0;display:flex;position:relative}.pending-card__progress-track{background:var(--border-color,#e5e7eb);z-index:0;border-radius:1px;height:2px;position:absolute;top:18px;left:14px;right:14px}.pending-card__progress-fill{background:var(--accent,#1f4d3a);border-radius:1px;height:100%;transition:width .6s ease-out}.pending-card__progress-step{z-index:1;background:var(--card-bg,#fff);border:2px solid var(--border-color,#e5e7eb);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:border-color .3s,background .3s,transform .2s;display:flex;position:relative}.pending-card__progress-dot{color:var(--text-secondary);opacity:.55;justify-content:center;align-items:center;transition:opacity .3s,transform .2s,color .3s;display:inline-flex}.pending-card__progress-step--active{border-color:var(--accent,#1f4d3a);background:#1f4d3a14}.pending-card__progress-step--active .pending-card__progress-dot{opacity:1;color:var(--accent,#1f4d3a)}.pending-card__progress-step--current{border-color:var(--accent,#1f4d3a);background:var(--accent,#1f4d3a);transform:scale(1.15);box-shadow:0 0 0 3px #1f4d3a26}.pending-card__progress-step--current .pending-card__progress-dot{opacity:1;color:#fff;transform:scale(1.15)}[data-theme=dark] .pending-card__progress-track{background:#ffffff1a}[data-theme=dark] .pending-card__progress-step--active{background:#2e6b4f1f}[data-theme=dark] .pending-card__progress-step--current{box-shadow:0 0 0 3px #2e6b4f33}.dashboard-view{padding:1rem;position:relative}.dashboard-refresh-indicator{color:var(--text-secondary);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 0;font-size:.85rem;display:flex}.dashboard-hero-gamify{border-radius:var(--radius-md);align-items:center;gap:.65rem;margin-bottom:.5rem;padding:.75rem 1rem;font-size:.85rem;font-weight:500;line-height:1.35;animation:.35s ease-out dhGamifySlide;display:flex}@keyframes dhGamifySlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dh-gamify-icon{flex-shrink:0;align-items:center;display:flex}.dh-gamify-text{flex:1;min-width:0}.dh-gamify-action{border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;padding:.35rem .85rem;font-size:.78rem;font-weight:600;transition:opacity .15s,transform .1s}.dh-gamify-action:hover{opacity:.85}.dh-gamify-action:active{transform:scale(.96)}.dh-gamify--free{color:var(--text-primary);background:linear-gradient(135deg,#d4a24c1f,#d4a24c0d);border:1px solid #d4a24c40}.dh-gamify--free .dh-gamify-icon{color:#d4a24c}.dh-gamify--free .dh-gamify-action{color:#fff;background:#d4a24c}.dh-gamify--essentiel{color:var(--text-primary);background:linear-gradient(135deg,#3b82f614,#6366f10a);border:1px solid #3b82f633}.dh-gamify--essentiel .dh-gamify-icon{color:#3b82f6}.dh-gamify--essentiel .dh-gamify-action{color:#fff;background:#3b82f6}.dh-gamify--pro{color:var(--text-primary);background:linear-gradient(135deg,#1f4d3a1f,#d4a24c14);border:1px solid #d4a24c4d}.dh-gamify--pro .dh-gamify-icon{color:#d4a24c}.dh-gamify--pro .dh-gamify-action{background:var(--accent,#1f4d3a);color:#fff}.dh-gamify--admin{color:var(--text-primary);background:linear-gradient(135deg,#6366f11a,#3b82f60f);border:1px solid #6366f140}.dh-gamify--admin .dh-gamify-icon{color:#6366f1}.dh-gamify--warning{color:var(--text-primary);background:linear-gradient(135deg,#e5bc6f1f,#f59e0b0a);border:1px solid #f59e0b40}.dh-gamify--warning .dh-gamify-icon{color:var(--color-warning)}.dh-gamify--warning .dh-gamify-action{background:var(--color-warning);color:#fff}.dh-gamify--error{color:var(--text-primary);background:linear-gradient(135deg,#c4453614,#ef444408);border:1px solid #ef444433}.dh-gamify--error .dh-gamify-icon{color:var(--color-error)}.dh-gamify--error .dh-gamify-action{background:var(--color-error);color:#fff}.dh-gamify--revoked{color:var(--text-primary);background:linear-gradient(135deg,#b4530914,#f59e0b0a);border:1px solid #f59e0b40}.dh-gamify--revoked .dh-gamify-icon{color:#b45309}.dh-gamify--revoked .dh-gamify-action{color:#fff;background:#b45309}.dh-gamify--canceled-warning{color:var(--text-primary);background:linear-gradient(135deg,#efa8441a,#f59e0b0a);border:1px solid #efa8444d}.dh-gamify--canceled-warning .dh-gamify-icon{color:#d97706}.dh-gamify--canceled-warning .dh-gamify-action{color:#fff;background:#d97706}.dh-gamify--dismissible{padding-right:2.5rem;position:relative}.dh-gamify-dismiss{color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.35rem;transition:opacity .15s,background .15s;display:flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.dh-gamify-dismiss:hover{opacity:1;background:#00000014}[data-theme=dark] .dh-gamify--free{background:linear-gradient(135deg,#d4a24c26,#d4a24c0f)}[data-theme=dark] .dh-gamify--essentiel{background:linear-gradient(135deg,#3b82f61f,#6366f10d)}[data-theme=dark] .dh-gamify--pro{background:linear-gradient(135deg,#1f4d3a2e,#d4a24c1a)}[data-theme=dark] .dh-gamify--admin{background:linear-gradient(135deg,#6366f126,#3b82f614)}[data-theme=dark] .dh-gamify--warning{background:linear-gradient(135deg,#f59e0b24,#f59e0b0f)}[data-theme=dark] .dh-gamify--error{background:linear-gradient(135deg,#ef44441f,#ef44440a)}[data-theme=dark] .dh-gamify--revoked{background:linear-gradient(135deg,#f59e0b24,#f59e0b0f)}[data-theme=dark] .dh-gamify--canceled-warning{background:linear-gradient(135deg,#efa84424,#f59e0b0d)}[data-theme=dark] .dh-gamify-dismiss:hover{background:#ffffff1a}.dashboard-hero-social{border-radius:var(--radius-sm);color:var(--text-secondary);background:#1f4d3a0d;border:1px solid #1f4d3a1a;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.82rem;display:flex}.dashboard-hero-social svg{color:var(--accent);flex-shrink:0}.dashboard-hero-social strong{color:var(--accent);font-weight:700}[data-theme=dark] .dashboard-hero-social{background:#2e6b4f14;border-color:#2e6b4f26}.scanning-section{flex-direction:column;align-items:center;gap:1.5rem;padding:3rem;display:flex}.scanning-title{margin:0}.scanning-step{color:var(--text-secondary);font-size:.9rem}.scan-preview-grid{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:1rem;display:flex}.scan-preview-img{object-fit:cover;border-radius:var(--radius-sm);width:80px;height:80px;box-shadow:var(--shadow);animation:1.5s ease-in-out infinite alternate scan-pulse}@keyframes scan-pulse{0%{opacity:.7;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.error-section{text-align:center;padding:2rem}.error-text{color:var(--color-error);margin-bottom:1rem;font-weight:600}.result-celebration{border-radius:var(--radius-md);color:var(--text-primary);background:linear-gradient(135deg,#2e6b4f14,#d4a24c0f);border:1px solid #22c55e40;flex-direction:column;gap:.3rem;padding:1rem 1.25rem;line-height:1.5;display:flex;position:relative;overflow:visible}.result-celebration--animate{animation:.6s cubic-bezier(.34,1.56,.64,1) both celebSlideIn}.result-celebration--animate:before,.result-celebration--animate:after{content:"";opacity:0;pointer-events:none;border-radius:50%;width:8px;height:8px;animation:2s ease-out forwards celebConfetti;position:absolute}.result-celebration--animate:before{background:#d4a24c;animation-delay:.3s;top:8px;left:15%}.result-celebration--animate:after{background:var(--color-success);animation-delay:.6s;top:4px;right:12%}@keyframes celebSlideIn{0%{opacity:0;transform:translateY(-14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes celebConfetti{0%{opacity:0;transform:translateY(0)scale(.5)}30%{opacity:1;transform:translateY(-8px)scale(1.2)}70%{opacity:.6;transform:translateY(-16px)scale(.9)}to{opacity:0;transform:translateY(-24px)scale(.6)}}.result-celebration-text{font-size:1rem;font-weight:600}.result-celebration-text strong{color:var(--color-success);font-weight:700}.result-celebration-sub{color:var(--text-secondary);font-size:.82rem}[data-theme=dark] .result-celebration{background:linear-gradient(135deg,#22c55e1a,#d4a24c14);border-color:#22c55e4d}[data-theme=dark] .result-celebration-text strong{color:var(--color-success)}.result-container{flex-direction:column;gap:2rem;display:flex}.result-header{justify-content:space-between;align-items:center;display:flex}.title-group{align-items:center;gap:1rem;display:flex}.result-grid{grid-template-columns:1fr 1.5fr;gap:1.5rem;max-width:100%;display:grid;overflow:hidden}.result-grid>*{min-width:0;overflow:hidden}.result-photo-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem;display:grid}.result-photo-img{border-radius:var(--radius-sm);object-fit:cover;width:100%}.result-card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:1.5rem}.details-card{flex-direction:column;gap:1.5rem;min-width:0;display:flex;overflow:hidden}.platform-cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;display:grid}.platform-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;transition:border-color .2s,box-shadow .2s;position:relative}.platform-card-best{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:#1f4d3a0a}.platform-card-best:before{content:"Recommandé";color:#fff;background:var(--accent);border-radius:var(--radius-full);z-index:2;padding:.15rem .55rem;font-size:.62rem;font-weight:700;line-height:1.4;position:absolute;top:-.55rem;left:1rem;box-shadow:0 1px 4px #1f4d3a33}[data-theme=dark] .platform-card-best{background:#2e6b4f14}[data-theme=dark] .platform-card-best:before{box-shadow:0 1px 4px #0000004d}.platform-card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.platform-card-name{text-transform:capitalize;color:var(--text-primary);font-size:.85rem;font-weight:700}.platform-card-prices{flex-direction:column;gap:.35rem;display:flex}.platform-card-price{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.platform-card-price span{color:var(--text-secondary);font-size:.75rem}.platform-card-price strong{color:var(--gold-dark);font-size:.95rem;font-weight:700}.platform-card-fallback{color:var(--text-secondary);opacity:.6;margin-top:.5rem;font-size:.65rem;font-style:italic}.platform-reco{border-radius:var(--radius-sm);color:var(--text-primary);background:#1f4d3a0f;border:1px solid #1f4d3a1f;grid-column:1/-1;padding:.7rem 1rem;font-size:.82rem;line-height:1.4}.platform-reco strong{color:var(--accent);text-transform:capitalize;font-weight:700}[data-theme=dark] .platform-reco{background:#2e6b4f14;border-color:#2e6b4f33}.comparables-list{flex-direction:column;gap:.4rem;display:flex}.comparable-item{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;transition:background .2s;display:flex}.comparable-item:hover{background:var(--border)}.comparable-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8rem;overflow:hidden}.comparable-price{color:var(--gold-dark);white-space:nowrap;font-size:.82rem;font-weight:600}.comparable-link{color:var(--text-secondary);flex-shrink:0}.info-box label,.field-group label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.field-group textarea,.field-group input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);width:100%;color:var(--text-primary);padding:.75rem;font-family:inherit}.field-group textarea{min-height:100px}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;padding:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #1f4d3a40}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1f4d3a59}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:.75rem 1.5rem;font-weight:600}@media (width<=768px){.dashboard-view{padding:.75rem;overflow-x:hidden}.result-container{max-width:100%;overflow:hidden}.result-grid{grid-template-columns:1fr;gap:1rem}.result-card{box-sizing:border-box;max-width:100%;padding:1rem;overflow:hidden}.result-header{flex-wrap:wrap;gap:.75rem}.result-photo-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.result-photo-img{max-width:100%;height:auto}.result-gallery{border-radius:var(--radius-md)}.result-gallery-img{max-height:280px}.result-gallery-nav{width:36px;height:36px}.result-gallery-dot{width:12px;height:12px;padding:8px}.result-checklist-item{padding:.6rem .75rem}.platform-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.platform-card{padding:.75rem}.platform-card-best:before{padding:.12rem .5rem;font-size:.58rem;top:-.5rem;left:.75rem}.platform-reco{padding:.6rem .75rem;font-size:.78rem}.comparable-title{min-width:0}.info-box{overflow-wrap:break-word;word-break:break-word}.scanning-section{padding:1.5rem}.scan-preview-img{width:60px;height:60px}.field-group textarea,.field-group input{box-sizing:border-box;width:100%;font-size:16px}.admin-panel{margin-top:1rem!important;padding:1rem!important}}.publish-section{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem}.publish-section>label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:block}.publish-buttons{gap:.5rem;display:flex}.publish-status{color:var(--accent);margin-top:.5rem;font-size:.8rem}.completion-toast{background:var(--card-bg);border:1px solid var(--accent);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:var(--text-primary);align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;animation:.3s ease-out toast-slide-in;display:flex}[data-theme=dark] .completion-toast{box-shadow:var(--shadow-lg)}.completion-toast-text{flex-direction:column;flex:1;gap:.15rem;font-size:.85rem;display:flex}.completion-toast-text strong{font-weight:600}.completion-toast-text span{color:var(--text-secondary);font-size:.8rem}.completion-toast-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;flex-shrink:0;padding:.4rem .9rem;font-size:.8rem;font-weight:600;transition:opacity .15s}.completion-toast-btn:hover{opacity:.85}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.result-cta-reestimate{padding:.75rem 1rem;font-size:.88rem}.result-share{padding:.75rem}.result-share-btn{min-width:60px;padding:.45rem .5rem;font-size:.75rem}.result-share-card-btn{padding:.6rem .75rem;font-size:.78rem}.result-celebration-text{font-size:.9rem}.result-celebration-sub{font-size:.75rem}.result-cta-reestimate{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.6rem;width:100%;padding:.85rem 1.5rem;font-size:.95rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 2px 12px #1f4d3a4d}.result-cta-reestimate:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1f4d3a66}.result-cta-reestimate:active{transform:scale(.97)}.result-cta-icon{align-items:center;display:flex}.result-share{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.result-share>label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:.78rem;font-weight:600}.result-share-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.result-share-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);min-width:80px;color:var(--text-primary);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .75rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;display:flex}.result-share-btn:hover{background:var(--bg-secondary);border-color:var(--accent);transform:translateY(-1px)}.result-share-btn:active{transform:scale(.96)}.result-share-btn--whatsapp:hover{background:#25d36614;border-color:#25d366}.result-share-btn--twitter:hover{background:#1da1f214;border-color:#1da1f2}.result-share--compact{background:0 0;border:none;gap:.4rem;padding:.6rem .5rem}.result-share--compact .result-share-buttons{gap:.5rem}.result-share--compact .result-share-btn{border-radius:var(--radius-md);flex:1;min-width:44px;padding:.6rem 0;font-size:.85rem}.result-share--compact .result-share-btn span{display:none}.result-share-btn--native{color:var(--accent)!important;border-color:var(--accent)!important;font-weight:600!important}.result-share-btn--native:hover{background:#1f4d3a14!important}.result-share-btn--native:disabled{opacity:.5;cursor:not-allowed}.result-share-card-section{flex-direction:column;align-items:center;gap:.4rem;display:flex}.result-share-card-btn{border-radius:var(--radius-sm);width:100%;color:var(--accent);cursor:pointer;background:linear-gradient(135deg,#1f4d3a14,#d4a24c0f);border:1px solid #1f4d3a33;padding:.7rem 1rem;font-size:.82rem;font-weight:600;transition:background .15s,transform .1s}.result-share-card-btn:hover:not(:disabled){background:linear-gradient(135deg,#1f4d3a24,#d4a24c1a);transform:translateY(-1px)}.result-share-card-btn:disabled{opacity:.5;cursor:not-allowed}.result-share-card-hint{color:var(--text-secondary);opacity:.7;font-size:.7rem}.result-gallery{border-radius:var(--radius);background:var(--bg-tertiary);touch-action:pan-y;width:100%;position:relative;overflow:hidden}.result-gallery-img{object-fit:contain;border-radius:var(--radius) 16px 0 0;width:100%;max-height:400px;display:block}.result-gallery-empty{min-height:200px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:.85rem;display:flex}.result-gallery-nav{border:1px solid var(--border);cursor:pointer;z-index:2;width:40px;height:40px;color:var(--text-primary);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.result-gallery-nav:hover{background:#fff}.result-gallery-prev{left:8px}.result-gallery-next{right:8px}.result-gallery-dots{justify-content:center;gap:.5rem;padding:.5rem 0;display:flex}.result-gallery-dot{background:var(--border);cursor:pointer;border-radius:50%;width:10px;height:10px;transition:background .2s,transform .2s}.result-gallery-dot.active{background:var(--accent);transform:scale(1.3)}.result-gallery-dot:hover{background:var(--accent);opacity:.7}[data-theme=dark] .result-gallery-nav{background:#1e1e1ee6}[data-theme=dark] .result-gallery-nav:hover{background:#282828f2}.result-hero-price{text-align:center;flex-direction:column;gap:.3rem;margin-top:1rem;padding:1rem .5rem;animation:.5s cubic-bezier(.34,1.56,.64,1) both heroPriceIn;display:flex}@keyframes heroPriceIn{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.result-hero-price-value{color:var(--gold-dark);letter-spacing:-.02em;font-size:2.2rem;font-weight:800;line-height:1.1}.result-hero-price-labels{color:var(--text-secondary);font-size:.78rem;font-weight:500}@media (width>=769px){.result-hero-price{display:none}}.result-milestone{border-radius:var(--radius-sm);background:var(--card-bg);border:2px solid;align-items:center;gap:.6rem;padding:.55rem 1rem;animation:.5s cubic-bezier(.34,1.56,.64,1) milestonePop;display:flex}.result-milestone-icon{font-size:1.1rem;line-height:1}.result-milestone-text{color:var(--text-primary);font-size:.82rem;font-weight:500}.result-reliability{border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.4rem;padding:.6rem .9rem;font-size:.78rem;font-weight:500;display:flex;position:relative}.result-reliability-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.result-reliability-text{flex:1;min-width:0}.result-reliability-bar{background:var(--bg-tertiary);border-radius:2px;width:100%;height:4px;margin-top:.3rem;overflow:hidden}.result-reliability-fill{border-radius:2px;height:100%;transition:width 1.2s cubic-bezier(.34,1.56,.64,1)}.result-reliability--high{color:var(--color-success);background:#2e6b4f1a}.result-reliability--high .result-reliability-dot,.result-reliability--high .result-reliability-fill{background:var(--color-success)}.result-reliability--mid{color:var(--color-warning);background:#e5bc6f1a}.result-reliability--mid .result-reliability-dot{background:var(--color-warning)}.result-reliability--mid .result-reliability-fill{background:linear-gradient(90deg, #b8873d, var(--color-warning))}.result-reliability--low{color:var(--color-error);background:#c4453614}.result-reliability--low .result-reliability-dot,.result-reliability--low .result-reliability-fill{background:var(--color-error)}.info-box{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:.75rem}.info-box-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.info-box-header label{color:var(--text-secondary);font-size:.82rem;font-weight:600}.copy-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;align-items:center;padding:4px;transition:color .2s,background .2s;display:flex}.copy-btn:hover{color:var(--accent);background:var(--bg-tertiary)}.avis-content p{color:var(--text-primary);margin:0;font-size:.88rem;line-height:1.6}.avis-content .avis-strategie{border-top:1px dashed var(--border);color:var(--text-secondary);margin-top:.65rem;padding-top:.65rem;font-style:italic}.avis-content--collapsed{max-height:6.5em;position:relative;overflow:hidden}.avis-content--collapsed:after{content:"";background:linear-gradient(transparent, var(--bg-tertiary));pointer-events:none;height:2.5em;position:absolute;bottom:0;left:0;right:0}.avis-read-more{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:.3rem 0;font-size:.8rem;font-weight:600;transition:color .15s}.avis-read-more:hover{color:var(--accent-light);text-decoration:underline}.no-comparables{color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-sm);text-align:center;padding:.75rem;font-size:.8rem;font-style:italic}@keyframes milestonePop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (width<=768px){.result-reliability{padding:.55rem .75rem;font-size:.74rem}}.modal-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-container{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border);width:100%;max-width:700px;max-height:90vh;padding:1.5rem;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.modal-header h2{white-space:nowrap;text-overflow:ellipsis;max-width:calc(100% - 48px);margin:0;font-size:1.15rem;overflow:hidden}.modal-close{background:var(--bg-tertiary);cursor:pointer;width:32px;height:32px;color:var(--text-primary);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal-gallery{border-radius:var(--radius-md);background:var(--bg-secondary);touch-action:pan-y;justify-content:center;align-items:center;min-height:200px;max-height:400px;margin-bottom:1.25rem;display:flex;position:relative;overflow:hidden}.modal-gallery-img{object-fit:contain;width:100%;height:100%;max-height:400px;display:block}.modal-gallery-nav{border:1px solid var(--border);cursor:pointer;z-index:2;width:40px;height:40px;color:var(--text-primary);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.modal-gallery-nav:hover{background:#fff}.modal-gallery-prev{left:8px}.modal-gallery-next{right:8px}[data-theme=dark] .modal-gallery-nav{background:#1e1e1ee6}[data-theme=dark] .modal-gallery-nav:hover{background:#282828f2}.modal-gallery-dots{justify-content:center;gap:.5rem;padding:.5rem 0;display:flex}.modal-gallery-dot{background:var(--border);cursor:pointer;border-radius:50%;width:10px;height:10px;transition:background .2s,transform .2s}.modal-gallery-dot.active{background:var(--accent);transform:scale(1.3)}.modal-gallery-dot:hover{background:var(--accent);opacity:.7}.modal-gallery-empty{min-height:200px;color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-md);justify-content:center;align-items:center;margin-bottom:1.25rem;font-size:.85rem;display:flex}.modal-platform-cards{margin-bottom:1.25rem}.modal-platform-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:.75rem;display:grid}.modal-platform-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem;transition:border-color .2s,box-shadow .2s;position:relative}.modal-card-best{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:#1f4d3a0a}.modal-card-best:before{content:"Recommandu00e9";color:#fff;background:var(--accent);border-radius:var(--radius-full);z-index:2;padding:.15rem .55rem;font-size:.62rem;font-weight:700;line-height:1.4;position:absolute;top:-.55rem;left:1rem;box-shadow:0 1px 4px #1f4d3a33}[data-theme=dark] .modal-card-best{background:#2e6b4f14}[data-theme=dark] .modal-card-best:before{box-shadow:0 1px 4px #0000004d}.modal-platform-card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.modal-platform-card-name{text-transform:capitalize;color:var(--text-primary);font-size:.85rem;font-weight:700}.modal-platform-card-prices{flex-direction:column;gap:.35rem;display:flex}.modal-platform-card-price{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.modal-platform-card-price span{color:var(--text-secondary);font-size:.75rem}.modal-platform-card-price strong{color:var(--gold-dark);font-size:.95rem;font-weight:700}.modal-platform-card-fallback{color:var(--text-secondary);opacity:.6;margin-top:.5rem;font-size:.65rem;font-style:italic}.modal-platform-reco{border-radius:var(--radius-sm);color:var(--text-primary);background:#1f4d3a0f;border:1px solid #1f4d3a1f;padding:.7rem 1rem;font-size:.82rem;line-height:1.4}.modal-platform-reco strong{color:var(--accent);text-transform:capitalize;font-weight:700}[data-theme=dark] .modal-platform-reco{background:#2e6b4f14;border-color:#2e6b4f33}.result-reliability{margin-bottom:1.25rem}.modal-details{flex-direction:column;gap:1rem;display:flex}.modal-comparables{margin-top:1.25rem}.modal-comparables>label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.82rem;font-weight:600;display:block}.modal-comparables-list{flex-direction:column;gap:.4rem;display:flex}.modal-comparable-item{background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary);align-items:center;gap:.75rem;padding:.5rem .75rem;text-decoration:none;transition:background .2s;display:flex}.modal-comparable-item:hover{background:var(--border)}.modal-comparable-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8rem;overflow:hidden}.modal-comparable-price{color:var(--gold-dark);white-space:nowrap;font-size:.82rem;font-weight:600}.modal-comparable-link{color:var(--text-secondary);flex-shrink:0}.modal-milestone{border-radius:var(--radius-sm);border:2px solid var(--accent);background:#1f4d3a0d;align-items:center;gap:.6rem;margin-top:1.25rem;padding:.65rem .9rem;animation:.5s cubic-bezier(.34,1.56,.64,1) milestonePop;display:flex}[data-theme=dark] .modal-milestone{background:#2e6b4f14}.modal-milestone-icon{flex-shrink:0;font-size:1.3rem}.modal-milestone-text{color:var(--text-primary);font-size:.82rem;font-weight:600}.modal-crosssell{margin-top:1rem}.modal-crosssell-card{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.75rem 1rem;transition:border-color .2s,background .2s;display:flex}.modal-crosssell-card:hover{border-color:var(--accent);background:#1f4d3a0a}.modal-crosssell-icon{color:var(--accent);flex-shrink:0}.modal-crosssell-body{flex-direction:column;flex:1;gap:.15rem;display:flex}.modal-crosssell-body strong{color:var(--text-primary);font-size:.82rem;font-weight:600}.modal-crosssell-body span{color:var(--text-secondary);font-size:.75rem;line-height:1.3}[data-theme=dark] .modal-crosssell-card:hover{background:#2e6b4f0f}.modal-share{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.modal-share>label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:.78rem;font-weight:600}.modal-share-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.modal-share-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);min-width:80px;color:var(--text-primary);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .75rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;display:flex}.modal-share-btn:hover{background:var(--bg-secondary);border-color:var(--accent);transform:translateY(-1px)}.modal-share-btn:active{transform:scale(.96)}.modal-share-btn--whatsapp:hover{background:#25d36614;border-color:#25d366}.modal-share-btn--twitter:hover{background:#1da1f214;border-color:#1da1f2}.modal-share--compact{background:0 0;border:none;gap:.4rem;padding:.6rem .5rem}.modal-share--compact .modal-share-buttons{gap:.5rem}.modal-share--compact .modal-share-btn{border-radius:var(--radius-md);flex:1;min-width:44px;padding:.6rem 0;font-size:.85rem}.modal-share--compact .modal-share-btn span{display:none}.modal-share-btn--native{color:var(--accent)!important;border-color:var(--accent)!important;font-weight:600!important}.modal-share-btn--native:hover{background:#1f4d3a14!important}.modal-share-btn--native:disabled{opacity:.5;cursor:not-allowed}.modal-share-card-section{flex-direction:column;align-items:center;gap:.4rem;margin-top:1rem;display:flex}.modal-share-card-btn{border-radius:var(--radius-sm);width:100%;color:var(--accent);cursor:pointer;background:linear-gradient(135deg,#1f4d3a14,#d4a24c0f);border:1px solid #1f4d3a33;padding:.7rem 1rem;font-size:.82rem;font-weight:600;transition:background .15s,transform .1s}.modal-share-card-btn:hover:not(:disabled){background:linear-gradient(135deg,#1f4d3a24,#d4a24c1a);transform:translateY(-1px)}.modal-share-card-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .modal-share-card-btn{background:#2e6b4f14}[data-theme=dark] .modal-share-card-btn:hover:not(:disabled){background:#2e6b4f29}.modal-share-card-hint{color:var(--text-secondary);opacity:.7;font-size:.7rem}@media (width<=768px){.modal-container{padding:1.25rem}.modal-gallery{min-height:160px;max-height:280px}.modal-gallery-img{max-height:280px}.modal-gallery-nav{width:36px;height:36px}.modal-platform-grid{gap:.75rem}.modal-platform-card{padding:.75rem}.modal-card-best:before{padding:.12rem .5rem;font-size:.58rem;top:-.5rem;left:.75rem}.modal-platform-reco{padding:.6rem .75rem;font-size:.78rem}}.modal-publish{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.modal-publish>label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:block}.modal-publish-buttons{gap:.5rem;display:flex}.btn-publish{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:.9rem .5rem;font-size:.75rem;font-weight:600;transition:background .15s,border-color .15s,transform .1s;display:flex}.btn-publish:hover{background:var(--bg-tertiary);border-color:var(--accent);transform:translateY(-1px)}.btn-publish:active{transform:scale(.97)}.publish-logo{border-radius:var(--radius-sm);object-fit:cover;width:32px;height:32px}.onboarding-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.onboarding-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);text-align:center;width:100%;max-width:480px;padding:2rem;animation:.3s ease-out onboarding-fade-in}@keyframes onboarding-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding-icon-wrapper{width:64px;height:64px;color:var(--accent);background:#2563eb1a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;display:inline-flex}.onboarding-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:700}.onboarding-desc{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.onboarding-content{margin-bottom:1.25rem}.onboarding-features{text-align:left;flex-direction:column;gap:.6rem;padding:0;list-style:none;display:flex}.onboarding-features li{color:var(--text-primary);padding-left:1.5rem;font-size:.9rem;line-height:1.4;position:relative}.onboarding-features li:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:.45em;left:0}.onboarding-example{text-align:left;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.onboarding-example-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:.5rem 1rem}.onboarding-example-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.7rem;font-weight:600}.onboarding-example-result{flex-direction:column;gap:.75rem;padding:1rem;display:flex}.onboarding-example-item{color:var(--text-primary);font-size:.9rem;font-weight:600}.onboarding-example-prices{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.onboarding-example-price{background:var(--bg-secondary);border-radius:var(--radius-sm);flex-direction:column;gap:.15rem;padding:.5rem .75rem;display:flex}.onboarding-example-price span{color:var(--text-secondary);font-size:.7rem}.onboarding-example-price strong{color:var(--accent);font-size:1.1rem}.onboarding-example-extras{flex-direction:column;gap:.25rem;display:flex}.onboarding-example-extras span{color:var(--text-secondary);font-size:.75rem}.onboarding-footer{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.82rem;font-style:italic}.onboarding-credit-info{color:var(--accent);border-radius:var(--radius-sm);background:#2563eb0f;margin-top:.75rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:inline-block}.onboarding-referral-bonus{border-radius:var(--radius-md);background:linear-gradient(135deg,#d4a24c1f,#1f4d3a14);border:1px solid #d4a24c40;flex-direction:column;align-items:center;gap:.35rem;margin-top:.75rem;padding:1rem;display:flex}.onboarding-referral-percent{color:var(--gold-dark);letter-spacing:-.02em;font-size:2rem;font-weight:800;line-height:1}.onboarding-referral-bonus span:last-child{color:var(--text-primary);font-size:.85rem;font-weight:500}.onboarding-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;margin-bottom:1rem;padding:.85rem;font-size:.95rem;font-weight:600;transition:background .2s}.onboarding-btn:hover{background:var(--accent-hover)}.onboarding-dots{justify-content:center;align-items:center;gap:.5rem;display:flex}.onboarding-dot{background:var(--border);border-radius:50%;width:8px;height:8px;transition:background .2s}.onboarding-dot-active{background:var(--accent)}@media (width<=768px){.onboarding-card{padding:1.5rem}.onboarding-title{font-size:1.15rem}}.install-page{background:var(--bg-primary,#fbf8f0);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:1rem;display:flex}.install-page-back{color:var(--text-secondary,#5c524a);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-self:flex-start;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem .75rem;font-size:.85rem;transition:background .2s;display:flex}.install-page-back:hover{background:var(--bg-secondary,#f0ebe0)}.install-page-card{background:var(--card-bg,#fefdfb);border:1px solid var(--border,#d9d0c0);border-radius:var(--radius-full);text-align:center;width:100%;max-width:400px;box-shadow:var(--shadow);padding:2rem 1.5rem}.install-page-icon{background:linear-gradient(135deg, var(--accent,#1f4d3a) 0%, var(--accent-light,#2e6b4f) 100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex}.install-page-card h1{color:var(--text-primary,#2a2520);margin-bottom:.75rem;font-size:1.3rem;font-weight:700}.install-page-desc{color:var(--text-secondary,#5c524a);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.install-page-state{flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;display:flex}.install-page-state p{color:var(--text-secondary,#5c524a);font-size:.85rem}.install-page-btn{background:var(--accent,#1f4d3a);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.install-page-btn:hover{background:var(--accent-hover,#16392b);transform:translateY(-1px);box-shadow:0 4px 12px #1f4d3a4d}.install-page-btn--secondary{background:var(--bg-secondary,#f0ebe0);color:var(--text-primary,#2a2520)}.install-page-btn--secondary:hover{background:var(--bg-tertiary,#e8e2d5);box-shadow:none}.install-page-notsupported{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.install-page-notsupported p{color:var(--text-secondary,#5c524a);font-size:.85rem;line-height:1.5}.install-page-tutorial{text-align:left;margin-top:1rem}.install-page-tutorial-header{color:var(--text-primary,#2a2520);border-bottom:1px solid var(--border,#d9d0c0);align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;font-size:.9rem;font-weight:600;display:flex}.install-page-tutorial-steps p{color:var(--text-secondary,#5c524a);margin-bottom:.75rem;font-size:.82rem;line-height:1.4}.install-page-tutorial-steps ol{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;padding-left:1.1rem;list-style:decimal;display:flex}.install-page-tutorial-steps li{color:var(--text-primary,#2a2520);padding-left:.25rem;font-size:.82rem;line-height:1.4}.install-page-tutorial-steps li strong{font-weight:600}.tutorial-icon{font-size:1rem}.install-page-tutorial-actions{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.install-page-btn--link{color:var(--accent,#1f4d3a);border:1px solid var(--accent,#1f4d3a);border-radius:var(--radius-md);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.65rem 1.25rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.install-page-btn--link:hover{background:#1f4d3a0f;transform:translateY(-1px)}.cookie-consent-banner{z-index:10000;background:#f8f4ec;border-top:1px solid #e0d5c7;animation:.35s cookie-slide-up;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #0000000f}@keyframes cookie-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cookie-consent-inner{justify-content:space-between;align-items:center;gap:1.25rem;max-width:800px;margin:0 auto;padding:.8rem 1.25rem;display:flex}.cookie-consent-text{color:#4a4a4a;flex:1;margin:0;font-size:.8rem;line-height:1.5}.cookie-consent-text strong{color:#1f4d3a;font-weight:600}.cookie-consent-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.cookie-consent-link{color:#7a6a5a;text-underline-offset:2px;white-space:nowrap;padding:.35rem .5rem;font-size:.78rem;-webkit-text-decoration:underline #7a6a5a59;text-decoration:underline #7a6a5a59;transition:color .2s}.cookie-consent-link:hover{color:#1f4d3a;text-decoration-color:#1f4d3a}.cookie-consent-btn{border-radius:var(--radius-xs);color:#4a4a4a;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d4c9b8;padding:.4rem .9rem;font-family:inherit;font-size:.78rem;font-weight:500;transition:background .2s,border-color .2s,color .2s}.cookie-consent-btn:hover{background:#f3efe8;border-color:#c4b8a8}.cookie-consent-btn-accept{color:#fff;background:#1f4d3a;border-color:#1f4d3a}.cookie-consent-btn-accept:hover{color:#fff;background:#173b2c;border-color:#173b2c}@media (width<=600px){.cookie-consent-inner{flex-direction:column;align-items:stretch;gap:.6rem;padding:.7rem 1rem}.cookie-consent-text{text-align:center;font-size:.76rem}.cookie-consent-actions{flex-wrap:wrap;justify-content:center;gap:.35rem}.cookie-consent-btn{padding:.35rem .7rem;font-size:.74rem}.cookie-consent-link{font-size:.74rem}}.toast-notification{z-index:10000;background:var(--card-bg,#fefdfb);border:1px solid var(--border,#d9d0c0);border-left:4px solid var(--accent,#1f4d3a);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);align-items:flex-start;gap:12px;min-width:320px;max-width:420px;padding:16px 18px;transition:opacity .25s,transform .25s;animation:.35s cubic-bezier(.16,1,.3,1) toast-slide-in;display:flex;position:fixed;top:20px;right:20px}.toast-icon{flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.toast-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.toast-title{color:var(--text-primary,#2a2520);font-size:.9rem;font-weight:700;line-height:1.3}.toast-message{color:var(--text-secondary,#5c524a);font-size:.82rem;line-height:1.4}.toast-quick-title{color:var(--text-primary,#2a2520);font-weight:600}.toast-action-btn{background:var(--accent,#1f4d3a);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-self:flex-start;margin-top:8px;padding:7px 14px;font-family:inherit;font-size:.8rem;font-weight:600;transition:background .15s}.toast-action-btn:hover{background:var(--accent-hover,#16392b)}.toast-action-btn:active{transform:scale(.98)}.toast-close-btn{border-radius:var(--radius-xs);width:28px;height:28px;color:var(--text-secondary,#5c524a);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-top:-2px;margin-right:-4px;transition:background .15s,color .15s;display:flex}.toast-close-btn:hover{color:var(--text-primary,#2a2520);background:#2a252014}.toast-success{border-left-color:#1f4d3a}.toast-error{border-left-color:#c0392b}.toast-error .toast-icon{color:#c0392b}.toast-info{border-left-color:#d4a24c}.toast-info .toast-icon{color:#d4a24c}@media (width<=480px){.toast-notification{min-width:unset;max-width:unset;top:12px;left:12px;right:12px}}:root{--bg-primary:#f8f4ec;--bg-secondary:#f0ebe0;--bg-tertiary:#e8e2d5;--text-primary:#2a2520;--text-secondary:#5c524a;--accent:#1f4d3a;--accent-hover:#16392b;--accent-light:#2e6b4f;--gold:#d4a24c;--gold-dark:#b8873d;--gold-light:#e5bc6f;--color-success:#2e6b4f;--color-warning:#e5bc6f;--color-error:#c44536;--color-info:#4f46e5;--border:#d9d0c0;--card-bg:#fefdfb;--shadow:0 2px 8px #2a252014;--shadow-lg:0 4px 20px #2a25201f;--shadow-xl:0 8px 32px #2a252029;--nav-height:72px;--sidebar-width:280px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius:16px;--radius-lg:24px;--radius-xl:20px;--radius-full:100px}[data-theme=dark]{--bg-primary:#1a1714;--bg-secondary:#2a2520;--bg-tertiary:#3a342e;--text-primary:#f0ebe0;--text-secondary:#b5a797;--accent:#2e6b4f;--accent-hover:#3d8563;--accent-light:#4a9b75;--gold:#e5bc6f;--gold-dark:#d4a24c;--gold-light:#f0d499;--border:#3a342e;--card-bg:#2a2520;--shadow:0 4px 12px #0000004d;--shadow-lg:0 6px 24px #0006;--shadow-xl:0 12px 40px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Manrope,system-ui,-apple-system,sans-serif;overflow-x:hidden}.brand{letter-spacing:-.02em;font-family:Manrope,sans-serif;font-weight:700}.app-container{min-height:100vh;display:flex;overflow-x:hidden}.main-content{margin-left:var(--sidebar-width);flex:1;padding:2rem}.main-content--animate{animation:.22s viewFadeIn}@keyframes viewFadeIn{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.upload-icon-box{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.auth-container{background:var(--bg-secondary);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.auth-card{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:400px;box-shadow:var(--shadow);padding:2.5rem;position:relative}.auth-form{flex-direction:column;gap:1rem;display:flex}.input-group{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:.75rem;padding:.75rem;display:flex}.input-group input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.toggle-password{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:2px;transition:color .15s;display:flex}.toggle-password:hover{color:var(--text-primary)}.btn-buy{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 2px 8px #1f4d3a40}.btn-buy:hover{transform:translateY(-2px);box-shadow:0 6px 16px #1f4d3a59}.btn-buy:active{transform:translateY(0)}.auth-forgot{text-align:center;color:var(--accent);cursor:pointer;margin-top:.75rem;font-size:.82rem}.auth-forgot:hover{text-decoration:underline}.auth-divider{text-align:center;color:var(--text-secondary);align-items:center;margin:1.5rem 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border);flex:1}.auth-divider span{padding:0 1rem}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);padding:1.5rem}.stat-card h3{margin-bottom:.5rem}.loading-screen{justify-content:center;align-items:center;min-height:60vh;display:flex}.spinner{color:var(--accent);animation:1s linear infinite spin}@media (width<=1024px){.main-content{width:100%;margin-left:0;padding:1rem 1rem 90px}}
