.offer-notification-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px;margin-bottom:16px;transition:all .2s ease}.offer-notification-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a}.offer-notification-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.offer-avatar{background:var(--color-primary-light);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}.offer-info{flex:1;min-width:0}.offer-title{font-size:16px;line-height:1.4;margin-bottom:8px;color:var(--color-text)}.offer-title strong{color:var(--color-primary)}.offer-amount{display:flex;align-items:center;gap:4px;margin-bottom:4px;color:var(--color-success);font-weight:600}.offer-amount .amount{font-size:18px}.offer-time{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-light)}.offer-notification-card .artwork-thumbnail{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--color-surface-variant)}.buyer-message{display:flex;align-items:flex-start;gap:8px;background:var(--color-surface-variant);padding:12px;border-radius:8px;margin-bottom:16px;font-style:italic;color:var(--color-text-light)}.buyer-message svg{flex-shrink:0;margin-top:2px}.offer-actions{display:flex;gap:12px;flex-wrap:wrap}.offer-actions button{padding:8px 16px;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;font-size:14px}.accept-btn{background:var(--color-success);color:#fff}.accept-btn:hover{background:var(--color-success-dark);transform:translateY(-1px)}.decline-btn{background:var(--color-error);color:#fff}.decline-btn:hover{background:var(--color-error-dark);transform:translateY(-1px)}.response-form{border-top:1px solid var(--color-border);padding-top:16px}.response-header{margin-bottom:16px}.response-type{display:flex;align-items:center;gap:8px;font-weight:600;font-size:16px}.response-type .accept-icon{color:var(--color-success)}.response-type .decline-icon{color:var(--color-error)}.message-input{margin-bottom:16px}.message-input label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text)}.message-input textarea{width:100%;padding:12px;border:1px solid var(--color-gray);border-radius:6px;resize:vertical;min-height:80px;font-family:inherit;font-size:14px;color:var(--color-text);background:var(--color-surface);transition:border-color .2s ease}.message-input textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.response-actions{display:flex;gap:12px}.submit-response-btn{background:var(--color-primary);color:#fff;padding:10px 20px;border:none;border-radius:6px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.submit-response-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.submit-response-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.cancel-response-btn{background:transparent;color:var(--color-text-light);padding:10px 20px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease}.cancel-response-btn:hover:not(:disabled){background:var(--color-surface-variant);border-color:var(--color-text-light)}.cancel-response-btn:disabled{opacity:.6;cursor:not-allowed}.offer-response-status{display:flex;flex-direction:column;gap:12px}.response-indicator{display:flex;align-items:center;gap:8px;padding:12px;border-radius:8px;font-weight:500}.response-indicator.accepted{background:#22c55e1a;color:var(--color-success);border:1px solid rgba(34,197,94,.2)}.response-indicator.declined{background:#ef44441a;color:var(--color-error);border:1px solid rgba(239,68,68,.2)}.response-indicator .response-icon{flex-shrink:0}.response-time{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-light);margin-left:auto;font-weight:400}.artist-response-message{display:flex;align-items:flex-start;gap:8px;background:var(--color-surface-variant);padding:12px;border-radius:8px;font-style:italic;color:var(--color-text-light);border-left:3px solid var(--color-primary)}.artist-response-message svg{flex-shrink:0;margin-top:2px;color:var(--color-primary)}@media (max-width: 768px){.offer-notification-card{padding:16px}.offer-actions{flex-direction:column}.offer-actions button{width:100%;justify-content:center}.response-actions{flex-direction:column}.response-actions button{width:100%;justify-content:center}.response-indicator{flex-wrap:wrap}.response-time{margin-left:0;margin-top:4px;width:100%}}.offer-response-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px;margin-bottom:16px;transition:all .2s ease;position:relative}.offer-response-card.accepted{border-left:4px solid var(--color-success);background:linear-gradient(90deg,rgba(34,197,94,.05) 0%,var(--color-surface) 20%)}.offer-response-card.declined{border-left:4px solid var(--color-error);background:linear-gradient(90deg,rgba(239,68,68,.05) 0%,var(--color-surface) 20%)}.offer-response-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.offer-response-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.response-status-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.accepted-icon{color:#fff;background:var(--color-success);border-radius:50%;padding:8px}.declined-icon{color:#fff;background:var(--color-error);border-radius:50%;padding:8px}.response-info{flex:1;min-width:0}.response-title{font-size:16px;line-height:1.4;margin-bottom:8px;color:var(--color-text)}.response-title strong{color:var(--color-primary)}.offer-details{display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.artwork-title{font-weight:500;color:var(--color-text)}.offer-amount{display:flex;align-items:center;gap:4px;font-weight:600;font-size:16px;color:var(--color-primary)}.response-time{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-text-light)}.offer-response-card .artwork-thumbnail{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--color-surface-variant)}.artwork-thumbnail img{width:100%;height:100%;object-fit:contain}.original-message,.artist-message{background:var(--color-surface-variant);padding:12px;border-radius:8px;margin-bottom:16px}.original-message{border-left:3px solid var(--color-border)}.artist-message{border-left:3px solid var(--color-primary);display:flex;align-items:flex-start;gap:8px}.artist-message svg{flex-shrink:0;margin-top:2px;color:var(--color-primary)}.message-label{font-size:12px;color:var(--color-text-light);margin-bottom:4px;font-weight:500}.message-content{color:var(--color-text);font-style:italic;line-height:1.4}.response-actions{display:flex;gap:12px;flex-wrap:wrap}.response-actions button{padding:10px 16px;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-size:14px}.pay-now-btn{background:var(--color-primary-dark);color:#fff;font-weight:600}.pay-now-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.new-offer-btn{background:var(--color-primary);color:#fff}.new-offer-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.view-artwork-btn{background:var(--color-surface-variant);color:var(--color-text);border:1px solid var(--color-border)}.view-artwork-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.new-offer-form{border-top:1px solid var(--color-border);padding-top:16px}.form-header{margin-bottom:16px}.form-header span{font-weight:600;font-size:16px;color:var(--color-text)}.offer-input-group,.message-input-group{margin-bottom:16px}.offer-input-group label,.message-input-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text)}.offer-response-card .amount-input{display:flex;align-items:center;border:1px solid var(--color-gray);border-radius:6px;overflow:hidden;background:var(--color-gray-light);padding:0}.offer-response-card .currency-symbol{background:var(--color-primary);padding:12px;font-weight:600;color:var(--color-white);border-right:1px solid var(--color-border)}.offer-response-card .amount-input input{flex:1;padding:12px;border:none;outline:none;background:transparent;font-size:14px;color:var(--color-gray)}.amount-input:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.message-input-group textarea{width:100%;padding:12px;border:1px solid var(--color-gray);border-radius:6px;resize:vertical;min-height:80px;font-family:inherit;font-size:14px;color:var(--color-text);background:var(--color-gray-light);transition:border-color .2s ease}.message-input-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.char-count{text-align:right;font-size:12px;color:var(--color-text-light);margin-top:4px}.offer-response-card .form-actions{display:flex;gap:12px;padding:0}.submit-offer-btn{background:var(--color-primary);color:#fff;padding:10px 20px;border:none;border-radius:6px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.submit-offer-btn:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.submit-offer-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.cancel-offer-btn{background:transparent;color:var(--color-text-light);padding:10px 20px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease}.cancel-offer-btn:hover:not(:disabled){background:var(--color-surface-variant);border-color:var(--color-text-light)}.cancel-offer-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.offer-response-card{padding:16px}.response-actions{flex-direction:column}.response-actions button{width:100%;justify-content:center}.form-actions{flex-direction:column}.form-actions button{width:100%;justify-content:center}.offer-details{flex-direction:column;align-items:flex-start}}.notification-dropdown{position:absolute;top:100%;right:0;width:380px;max-width:480px;min-width:380px;width:max-content;max-height:500px;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e5e7eb;z-index:1000;overflow:hidden;margin-top:.5rem}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #f3f4f6;background:#f9fafb}.notification-header h3{margin:0;color:#374151;font-size:1rem;font-weight:600}.mark-all-read-btn{display:flex;align-items:center;gap:.25rem;background:none;border:none;color:#6b7280;cursor:pointer;font-size:.8rem;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.mark-all-read-btn:hover{background:#e5e7eb;color:#374151}.notification-list{max-height:350px;overflow-y:auto}.no-notifications{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#6b7280;text-align:center}.no-notifications svg{margin-bottom:1rem;opacity:.5}.notification-item{display:flex;align-items:flex-start;padding:1rem;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background-color .2s;gap:.75rem;position:relative}.notification-item:hover{background:#f9fafb}.notification-item.unread{background:#f0f9ff;border-left:3px solid #3b82f6}.notification-item.unread:hover{background:#e0f2fe}.notification-icon{width:32px;height:32px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0}.notification-item.unread .notification-icon{background:#dbeafe;color:#3b82f6}.notification-content{flex:1;min-width:0}.notification-text{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.notification-title{font-weight:500;color:#374151;font-size:.9rem;line-height:1.3}.notification-subtitle{color:#6b7280;font-size:.8rem;font-style:italic}.notification-meta{display:flex;align-items:center;gap:.25rem;color:#9ca3af;font-size:.75rem}.unread-indicator{position:absolute;top:1rem;right:1rem;width:8px;height:8px;background:#3b82f6;border-radius:50%}.notification-arrow{color:#d1d5db;margin-left:.5rem;flex-shrink:0}.notification-footer{padding:.75rem 1rem;border-top:1px solid #f3f4f6;background:#f9fafb}.view-all-btn{width:100%;background:none;border:none;color:#3b82f6;font-weight:500;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s}.view-all-btn:hover{background:#e5e7eb}.representation-actions{display:flex;gap:.5rem;margin-top:.75rem}.representation-actions .accept-btn,.representation-actions .decline-btn{display:flex;align-items:center;gap:.25rem;padding:.4rem .8rem;border:none;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.representation-actions .accept-btn{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.representation-actions .accept-btn:hover{background:#22c55e4d;border-color:#22c55e80}.representation-actions .decline-btn{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.representation-actions .decline-btn:hover{background:#ef44444d;border-color:#ef444480}.notification-item.expanded{background:#f8fafc;border-bottom:1px solid #e2e8f0}.notification-arrow.rotated{transform:rotate(90deg);transition:transform .2s ease}.notification-arrow{transition:transform .2s ease}.expanded-notification{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1rem;margin:0}.expanded-notification .offer-notification-card,.expanded-notification .offer-response-card{margin:0;border-radius:8px;box-shadow:0 2px 8px #0000001a;background:#fff}@media (max-width: 480px){.notification-dropdown{width:320px;right:-100px;max-width:320px;min-width:320px}.notification-item{padding:.75rem}.notification-title{font-size:.85rem}.expanded-notification{padding:.75rem}.expanded-notification .offer-notification-card,.expanded-notification .offer-response-card{padding:1rem}}.notification-bell-container{position:relative}.notification-bell{position:relative;background:none;border:none;padding:.5rem;border-radius:50%;cursor:pointer;color:#fffc;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.notification-bell:hover{background:#ffffff1a;color:#fff}.notification-bell.has-unread,.notification-bell.has-unread:hover{color:#fff}.bell-ring{animation:ring 2s ease-in-out infinite}@keyframes ring{0%,90%,to{transform:rotate(0)}5%,15%{transform:rotate(10deg)}10%,20%{transform:rotate(-10deg)}}.notification-badge{position:absolute;top:-2px;right:-2px;background:#ef4444;color:#fff;border-radius:50%;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;border:2px solid rgba(255,255,255,.2);animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}to{transform:scale(1);opacity:1}}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;height:60px;padding:0 1rem}.nav-logo a{color:#fff;text-decoration:none;font-size:1.3rem;font-weight:700}.nav-logo img{width:auto;height:33px;margin-right:10px}.nav-links{display:flex;align-items:center;gap:1.5rem}.nav-link{color:#fff;text-decoration:none;transition:color .2s}.nav-link:hover{color:#4caf50}.nav-button{background-color:#4caf50;color:#fff;padding:8px 16px;border-radius:4px;text-decoration:none;transition:background-color .2s}.nav-button:hover{background-color:#45a049}.dropdown-trigger{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#fff;font-size:1rem;cursor:pointer;padding:.5rem}.dropdown-arrow{font-size:.7rem;margin-top:2px}.dropdown-menu{position:absolute;top:100%;right:0;background-color:#fff;border-radius:4px;box-shadow:0 4px 12px #0000001a;width:180px;margin-top:.5rem;overflow:hidden}.dropdown-item{display:block;color:#333;padding:.75rem 1rem;text-decoration:none;transition:background-color .2s;cursor:pointer;font-size:.95rem;text-align:left;border:none;background:none;width:100%}.dropdown-item:hover{background-color:#f5f5f5}.logout-item{color:#d32f2f;border-top:1px solid #eee}.logout-item:hover{background-color:#ffebee}.logout-button{background-color:transparent;color:#fff;border:1px solid #ddd;padding:6px 12px;border-radius:4px;cursor:pointer;transition:all .2s}.logout-button:hover{background-color:#ffffff1a;border-color:#fff}@media (max-width: 600px){.nav-container{padding:0 1rem}.nav-links{gap:1rem}.dropdown-menu{right:-1rem}}.nav-links{display:flex;align-items:center;gap:1rem}.navigation .messages-nav{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#fffc;text-decoration:none}.navigation .messages-nav:hover,.navigation .messages-nav.active{background:none;color:#fff}.nav-icon-wrapper{position:relative;display:flex;align-items:center}.nav-label{font-size:.9rem;font-weight:500}.unread-badge{position:absolute;top:-6px;right:-8px;background:#ef4444;color:#fff;border-radius:50%;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;border:2px solid rgba(255,255,255,.2);animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@media (max-width: 768px){.nav-label{display:none}.messages-nav{padding:.5rem;min-width:auto}.nav-links{gap:.5rem}}.user-dropdown{position:relative}.bottom-navigation{position:fixed;bottom:0;left:0;width:100%;box-shadow:0 -2px 10px #0000001a;z-index:1000;padding-bottom:env(safe-area-inset-bottom,0);border:none!important;transition:transform .22s ease,opacity .22s ease}.bottom-navigation .nav-container{display:flex;justify-content:space-around;align-items:center;max-width:600px;margin:0 auto;height:60px}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:100%;border:none;background:none;color:#666;font-size:.8rem;font-weight:500;cursor:pointer;transition:color .2s,transform .1s;padding:0 4px;outline:none;gap:5px}.nav-item span{font-size:.7rem}.nav-item:hover{border-radius:0;background:var(--color-primary-light)}.nav-item:active{transform:scale(.95)}.nav-item.active{position:relative;border-radius:0;background:var(--color-primary-light)}body{padding-bottom:60px}body.gallery-bottom-sheet-open .bottom-navigation{transform:translateY(calc(100% + env(safe-area-inset-bottom,0px)));opacity:0;pointer-events:none}body.gallery-bottom-sheet-open{padding-bottom:0}@media (max-width: 320px){.nav-item span{font-size:.65rem}}@supports (padding: max(0px)){.bottom-navigation{padding-bottom:max(env(safe-area-inset-bottom),0px)}body{padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}body.gallery-bottom-sheet-open{padding-bottom:0}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1);z-index:10000;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cookie-banner-content{max-width:1200px;margin:0 auto;padding:1.5rem;color:#fff}.cookie-banner-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.cookie-icon{color:#f39c12;flex-shrink:0}.cookie-banner-header h3{margin:0;font-size:1.1rem;font-weight:600}.cookie-banner-text{margin-bottom:1.5rem;line-height:1.5;color:#ffffffe6}.cookie-banner-text p{margin:0 0 .5rem;font-size:.9rem}.cookie-link{color:var(--color-primary);text-decoration:underline}.cookie-banner-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.cookie-btn{padding:.6rem 1.2rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .2s}.cookie-btn-accept{background:var(--color-primary);color:#fff}.cookie-btn-accept:hover{background:var(--color-primary-dark)}.cookie-btn-reject{background:#ffffff1a;color:#fffc;border:1px solid rgba(255,255,255,.2)}.cookie-btn-reject:hover{background:#fff3;color:#fff}.cookie-btn-secondary{background:transparent;color:#fffc;border:1px solid rgba(255,255,255,.3)}.cookie-btn-secondary:hover{background:#ffffff1a;color:#fff}.cookie-settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;padding:1rem}.cookie-settings-modal{background:#1a1a2e;border-radius:12px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;color:#fff;animation:scaleIn .2s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.cookie-settings-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.cookie-settings-header h2{margin:0;font-size:1.3rem}.cookie-settings-close{background:none;border:none;color:#fff9;cursor:pointer;padding:.5rem;border-radius:4px;transition:all .2s}.cookie-settings-close:hover{background:#ffffff1a;color:#fff}.cookie-settings-content{padding:1.5rem}.cookie-category{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.cookie-category:last-child{border-bottom:none;margin-bottom:0}.cookie-category-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.cookie-category-info h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.cookie-category-info p{margin:0;color:#ffffffb3;font-size:.9rem;line-height:1.4}.cookie-toggle{flex-shrink:0}.cookie-switch{position:relative;display:inline-block;width:50px;height:24px}.cookie-switch input{opacity:0;width:0;height:0}.cookie-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#fff3;transition:.4s;border-radius:24px}.cookie-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:#fff;transition:.4s;border-radius:50%}input:checked+.cookie-slider{background:var(--color-primary)}input:checked+.cookie-slider:before{transform:translate(26px)}.cookie-toggle-label{color:#fff9;font-size:.8rem;font-weight:500}.cookie-category-details{color:#fff9;font-size:.8rem;line-height:1.4}.cookie-category-details p{margin:.3rem 0}.cookie-settings-actions{padding:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:1rem;justify-content:flex-end}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px;width:100%;z-index:100000}.spinner{width:40px;height:40px;border:3px solid var(--color-gray-light, #e0e0e0);border-top:3px solid var(--color-primary, #4caf50);border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.spinner-large{width:50px;height:50px;border:4px solid rgba(0,0,0,.1);border-top:4px solid var(--color-primary, #4caf50);border-radius:50%;animation:spin 1s linear infinite}.spinner-white{border:3px solid rgba(255,255,255,.3);border-top:3px solid #ffffff}.spinner-inline{display:inline-block;vertical-align:middle;margin-right:8px}.loading-container p{color:var(--color-text-light, #666);font-size:1rem;margin-top:16px;text-align:center}.page-loading{min-height:60vh;text-align:center}.centered-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-container .spinner{margin-bottom:16px}:root{--color-primary: #4CAF50;--color-primary-dark: #45a049;--color-primary-light: #e8f5e9;--color-success-dark: #1f5d25;--color-secondary: #2196F3;--color-secondary-dark: #0b7dda;--color-secondary-light: #e3f2fd;--color-danger: #f44336;--color-danger-light: #ffebee;--color-gray-dark: #333333;--color-gray: #666666;--color-gray-light: #f5f5f5;--color-gray-lighter: #f8f8f8;--color-error: #d32f2f;--color-error-light: #ffebee;--color-error-dark: #b91c1c;--color-success: #2e7d32;--color-white: #ffffff;--color-black: #000000;--color-text: #18181b;--color-text-primary: #18181b;--color-text-light: #52525b;--color-text-secondary: #71717a;--color-text-tertiary: #a1a1aa;--color-text-inverse: #f8fafc;--color-background: #fafaf9;--color-background-alt: #f4f4f5;--color-background-dark: #18181b;--color-surface: rgba(255, 255, 255, .94);--color-surface-solid: #ffffff;--color-surface-variant: #f4f4f5;--color-surface-hover: #ededf0;--color-border: rgba(24, 24, 27, .12);--color-border-strong: rgba(24, 24, 27, .2);--border-color: var(--color-border);--border-color-light: rgba(24, 24, 27, .08);--overlay-backdrop: rgba(24, 24, 27, .55);--text-primary: var(--color-text);--text-secondary: var(--color-text-secondary);--surface-color: var(--color-surface);--surface-color-dark: var(--color-surface-solid);--surface-color-lighter: var(--color-surface-hover);--color-white-10: rgba(255, 255, 255, .1);--color-white-20: rgba(255, 255, 255, .2);--color-white-30: rgba(255, 255, 255, .3);--color-white-40: rgba(255, 255, 255, .4);--color-white-50: rgba(255, 255, 255, .5);--color-white-60: rgba(255, 255, 255, .6);--color-white-70: rgba(255, 255, 255, .7);--color-white-80: rgba(255, 255, 255, .8);--color-white-90: rgba(255, 255, 255, .9);--app-gradient: linear-gradient( 135deg, #ff4fff 3%, #ff8075 30%, #ffaa00 54%, #f8ab02 58%, #e5af0a 64%, #c6b516 71%, #9bbe28 79%, #63c93e 87%, #21d759 96%, #00de67 100% );--app-gradient-light: linear-gradient( 135deg, #ff4fff50 3%, #ff807550 30%, #ffaa0050 54%, #f8ab0250 58%, #e5af0a50 64%, #c6b51650 71%, #9bbe2850 79%, #63c93e50 87%, #21d75950 96%, #00de6750 100% );--app-gradient-green: linear-gradient( 145deg, #4CAF50 0%, #307634 100% );--app-gradient-purple: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--app-gradient-blue: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);--app-gradient-red: linear-gradient(135deg, #93364b 0%, #a12813 100%);--app-gradient-yellow: linear-gradient(135deg, #ffb412 0%, #f1a100 100%);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--font-family: "Bodoni Moda", ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.1rem;--font-size-xl: 1.25rem;--font-size-xxl: 1.5rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-50: 50%;--border-radius-circle: 50%;--radius-xs: 4px;--radius-sm: var(--border-radius-sm);--radius-md: var(--border-radius-md);--radius-lg: var(--border-radius-lg);--radius-xl: 24px;--radius-2xl: 32px;--radius-pill: 999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 24px 60px rgba(24, 24, 27, .16);--shadow-green: 0 14px 16px -7px var(--color-primary-dark);--focus-ring: 0 0 0 3px rgba(76, 175, 80, .18);--focus-ring-dark: 0 0 0 3px rgba(255, 255, 255, .22);--shadow-inset-sm: inset 0 1px 3px rgba(0, 0, 0, .5);--shadow-inset-md: inset 0 2px 8px rgba(0, 0, 0, .1);--shadow-inset-lg: inset 0 -4px 12px rgba(0, 0, 0, .5);--transition-fast: .2s ease;--transition-normal: .3s ease;--content-max-width: 1200px;--header-height: 60px;--content-padding: clamp(1rem, 2vw, 1.5rem);--bottom-nav-height: 72px;--page-max-width: 1200px;--page-max-width-wide: 1360px;--control-height-sm: 36px;--control-height-md: 44px;--control-height-lg: 52px;--grid-gap-sm: 1rem;--grid-gap-md: 1.5rem;--grid-gap-lg: 2rem;--grid-column-width-sm: minmax(150px, 1fr);--grid-column-width-md: minmax(250px, 1fr);--grid-column-width-lg: minmax(300px, 1fr);--model-card-height: 180px;--model-icon-size: 100px;--z-index-header: 100;--z-index-overlay: 900;--z-index-modal: 1000;--z-index-modal-high: 1100;--z-index-tooltip: 1500;--z-index-toast: 1600;--z-index-gallery-ui: 100;--breakpoint-xs: 480px;--breakpoint-sm: 600px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px}html,body{margin:0;padding:0;height:100%;position:relative;overscroll-behavior-y:auto}body{font-family:var(--font-family);font-optical-sizing:auto;font-variation-settings:"opsz" 10;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6,p{margin:.5rem 0;padding:0}h1,h2,h3,h4,h5,h6{font-variation-settings:"opsz" 10}*,*:before,*:after{box-sizing:border-box}a{text-decoration:none;color:inherit}button,input,select,textarea,a{font-family:inherit;font-size:inherit;font-variation-settings:"opsz" 8}textarea{padding:var(--spacing-sm)}input{padding:var(--spacing-sm) 0}ul,ol{padding:0;margin:0;list-style:none;padding-left:1,5rem}li{padding-left:1rem}li:before{content:"";display:inline-block;width:.5rem;height:.5rem;background-color:var(--color-primary);border-radius:50%;margin-left:-1rem;margin-right:.5rem}img,video{max-width:100%;height:auto}canvas{display:block;touch-action:none;outline:none}body.no-scroll{overflow:hidden;position:fixed;width:100%;height:100%}.fixed{position:fixed;top:0;left:0;width:100%;height:100%}.container{width:90%;margin:0 auto;padding:var(--spacing-md)}.container-sm{max-width:800px}.container-xs{max-width:600px}.page{padding:var(--spacing-lg) 0}.page-header{margin-bottom:var(--spacing-xl);text-align:center}.page-title{color:var(--color-gray-dark);margin-bottom:var(--spacing-sm)}.page-description{color:var(--color-gray);max-width:600px;margin:0 auto}.page-content{padding:1.5rem 1.5rem 10vh 1.5rem}.grid{display:grid;gap:var(--grid-gap-md)}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-auto-sm{grid-template-columns:repeat(auto-fill,var(--grid-column-width-sm))}.grid-auto-md{grid-template-columns:repeat(auto-fill,var(--grid-column-width-md))}.grid-auto-lg{grid-template-columns:repeat(auto-fill,var(--grid-column-width-lg))}.flex-col{flex-direction:column}.card-actions{display:flex;flex-direction:row;justify-content:stretch;align-items:center;flex-wrap:wrap;gap:.5rem;z-index:10;padding:0 1rem}.overlay{position:fixed;z-index:1000;top:0;right:0;width:100%;height:100%;background:#0001;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.overlay-content{width:90%;margin:0 auto;top:40vh;position:relative}.confirmation-overlay .overlay-content{max-width:300px}.models-list .list-card.model-card{display:flex;gap:1rem;transition:all .3s ease;width:100%;flex-direction:row;flex-wrap:wrap}.list-card .card-image{flex-shrink:0;width:33%;border-radius:8px;overflow:hidden}.list-card .card-image img{width:100%;height:100%;object-fit:cover}.list-card .card-content{flex:1;display:flex;justify-content:space-between;width:40%;flex-direction:column}.models-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-xxl) var(--spacing-lg)}.model-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.content-grid{display:grid;grid-template-columns:1fr 2fr;gap:1rem}.artist-content,.collector-content{display:grid;gap:2rem;grid-template-columns:1fr}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.artist-content,.collector-content,.content-grid{grid-template-columns:minmax(100%,1fr)}.flex-col-mobile{flex-direction:column}.items-center-mobile{align-items:center}.models-grid{grid-template-columns:1fr}.model-card{width:100%}}.card,.surface-card{background:var(--color-surface-solid, var(--color-white));color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg, var(--border-radius-md));box-shadow:var(--shadow-md);overflow:hidden}.card-header,.surface-card-header{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.card-body,.surface-card-body{padding:var(--spacing-md)}.card-content,.surface-card-content{padding:var(--spacing-md) var(--spacing-md) 0;margin-top:0;margin-bottom:auto}.card-footer,.surface-card-footer{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:var(--spacing-sm);margin-top:.75rem}.surface-card-interactive{transition:transform var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-normal)}.surface-card-interactive:hover{transform:translateY(-2px);border-color:var(--color-border-strong, var(--color-border));box-shadow:var(--shadow-lg)}.surface-card-interactive:focus-within{box-shadow:var(--shadow-lg),var(--focus-ring)}.artwork-image-surface{position:relative;aspect-ratio:var(--artwork-image-aspect-ratio, 1 / 1);overflow:hidden;border-radius:var(--artwork-image-radius, 0);background:var( --artwork-image-background, linear-gradient(135deg, rgba(17, 24, 39, .08), rgba(79, 70, 229, .14)) );box-shadow:var(--artwork-image-shadow, none)}.artwork-image-surface>img{display:block;position:relative;top:50%;width:100%;height:var(--artwork-image-height, 100%);object-fit:contain;translate:0 -50%;transition:transform var(--transition-normal)}.surface-card-interactive:hover .artwork-image-surface>img{transform:scale(var(--artwork-image-hover-scale, 1.025))}.social-actions{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.list-card .card-actions{display:flex;flex-direction:column;gap:.75rem}.list-card .action-buttons{display:flex;gap:.5rem}.list-card .social-actions{justify-content:flex-start;margin-top:0}.grid-card .card-footer{display:flex;flex-direction:column;gap:.5rem}.grid-card .social-actions{position:absolute;top:.5rem;right:.5rem;flex-direction:column;justify-content:center;margin-top:0}.card-actions.sales{align-items:flex-start;flex-wrap:wrap;padding:var(--spacing-md);background:var(--color-white-30)}.card-actions.sales .price-section{flex-grow:2}.card-actions button.card-btn{flex-direction:column;flex-grow:1;padding:.5rem;border:1px solid #fff5;border-radius:.4rem;background:#0005}.model-card .share-button,.model-card .collection-button{padding:.35rem;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#ffffffb3;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.model-card .share-button:hover,.model-card .collection-button:hover{border-color:var(--color-primary);background:#ffffffe6}button,.button{background:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;touch-action:manipulation;-moz-appearance:none;appearance:none;-webkit-appearance:none;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-family:var(--font-family);text-decoration:none;line-height:1}button:hover,.button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}button:active,.button:active{transform:translateY(0)}button:disabled,.button:disabled{opacity:.6;cursor:not-allowed;transform:none}button:disabled:hover,.button:disabled:hover{background:var(--color-primary);transform:none}.button-secondary,.buy-now-button{background:var(--color-secondary)}.button-secondary:hover,.buy-now-button:hover{background:var(--color-secondary-dark)}.button-transparent,.cancel-button{background:transparent;color:var(--color-white-80);border:2px solid var(--color-white-20)}.button-transparent:hover,.cancel-button:hover{background:var(--color-white-10);border-color:var(--color-white-30)}.button-danger{background:var(--color-danger)}.button-danger:hover{background:var(--color-danger);filter:brightness(.9)}.button-success{background:var(--color-success)}.button-success:hover{background:var(--color-success);filter:brightness(.9)}.button-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.button-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg)}.button-full{width:100%}.button-round{width:40px;height:40px;padding:0;border-radius:var(--border-radius-circle)}.round-small{border-radius:var(--border-radius-circle);padding:var(--spacing-sm)}.buy-now-button.full-width{width:100%}.spinner{width:40px;height:40px;margin:var(--spacing-md) auto;border:4px solid rgba(0,0,0,.1);border-radius:var(--border-radius-circle);border-top:4px solid var(--color-primary);animation:spin 1s linear infinite}.close-button,.apply-changes-button{background:var(--app-gradient-red);border:none;color:var(--color-gray-lighter);font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:color .2s}.error-message{color:var(--color-error);background-color:var(--color-error-light);padding:var(--spacing-md);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md);width:100%;box-sizing:border-box;text-align:center}.ar-button,.ar-view-button{position:absolute;padding:var(--spacing-lg);background:var(--color-white-90);font-weight:700;z-index:var(--z-index-overlay);color:var(--color-text);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.model-control-button.save-button.ar-button{bottom:auto}.model-control-button{top:20vh;left:50%;translate:-50% 0}.model-control-button:hover{translate:-50% -2px}.ar-container{width:100%;position:relative}.ar-wrapper{position:relative;width:100%;min-height:var(--ar-min-height);max-height:var(--content-height-max);touch-action:none}.camera-btn{background-color:var(--color-background);color:var(--color-text);border-radius:var(--border-radius-circle);height:40px;width:40px;padding:0;display:flex;align-items:center;justify-content:center}.camera-btn:hover{background-color:var(--color-background-alt)}.canvas-config{padding:var(--spacing-md);background-color:var(--color-background-alt);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.canvas-config form{justify-content:space-around}.canvas-config .form-group{display:flex;flex-direction:column-reverse;justify-content:flex-end;margin-bottom:0;width:30%}.controls.glass{position:absolute;bottom:16px;left:3%;display:flex;flex-direction:row;gap:5px;z-index:10;width:94%;flex-wrap:wrap;justify-content:space-around;align-items:flex-start;padding:10px}.name-prompt-modal{display:flex;flex-direction:column;gap:var(--spacing-sm)}.name-prompt-modal .modal-buttons,.modal-buttons{display:flex;justify-content:space-evenly;gap:.5rem;width:100%;margin-top:var(--spacing-md)}.name-prompt-modal input{padding:var(--spacing-sm)}.model-controls{width:90%;padding:1rem;border-radius:8px;z-index:10;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-around;align-items:center;top:0;align-self:flex-start;gap:.5rem}.back-button{background:#6c757d;color:#fff;border:none;border-radius:var(--border-radius-50);padding:8px;cursor:pointer;font-weight:500;transition:background-color .2s;height:30px;width:30px;align-items:center;justify-content:center}.back-button:hover{background-color:#5a6268}.model-thumbnail{width:auto;object-fit:contain;border-radius:4px 4px 0 0;height:200px}.model-card.new-model .model-preview:after{content:"NEW";position:absolute;top:10px;right:10px;background-color:#4caf50;color:#fff;padding:3px 8px;border-radius:3px;font-size:12px;font-weight:700}.photo-guide{border:1px solid #fff;padding:var(--spacing-md);border-radius:var(--border-radius-md);background:var(--color-white-80);margin-top:var(--spacing-md)}.anonymous-usage-banner{z-index:99999999;position:relative;background:#ffffffc7;padding:1rem;box-shadow:var(--shadow-lg)}.anonymous-usage-banner a{color:var(--color-primary);font-weight:800}.view-controls{display:flex;border:1px solid rgba(255,255,255,.2);border-radius:8px;overflow:hidden;background:#ffffff1a}.view-toggle{padding:.5rem;border:none;background:transparent;color:#0006;cursor:pointer;transition:all .2s}.view-toggles{display:flex;border:1px solid rgba(255,255,255,.2);border-radius:12px;overflow:hidden;background:#ffffff1a}.view-toggle:hover,.view-toggle.active{background:#fff3;color:var(--color-gray-dark)}.search-container{position:relative;flex:1;min-width:300px;max-width:100%}.search-container svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-gray-dark)}.search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1a;color:var(--color-gray-dark);font-size:1rem;transition:all .2s}.search-input:focus{outline:none;border-color:var(--color-primary);background:#ffffff26}.search-input::placeholder{color:var(--color-gray-dark)}.gallery-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.control-buttons{display:flex;gap:.75rem;align-items:center;max-width:100%;flex-wrap:wrap;justify-content:space-between}.filter-toggle{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-gray-dark);font-size:.9rem;cursor:pointer;transition:all .2s;position:relative}.filter-toggle:hover,.filter-toggle.active{background:#fff3;border-color:var(--color-primary)}.filter-count{background:var(--color-primary);color:var(--color-gray-dark);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}select{padding:.75rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffffc4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-gray-dark);font-size:.9rem;cursor:pointer;min-width:60px}.sort-select option{background:#ffffffc4;color:var(--color-gray-dark)}.action-buttons{display:flex;justify-content:space-around;flex-direction:row;bottom:0;align-self:center;padding:var(--spacing-sm) 0;flex-wrap:wrap;row-gap:1rem;width:100%}.modal-body{padding:1rem;display:grid;grid-template-columns:1fr;gap:1rem}.modal-image{border-radius:12px;overflow:hidden;aspect-ratio:4/3}.modal-image img{width:100%;height:100%;object-fit:contain}.modal-details{display:flex;flex-direction:column;gap:1rem}.detail-section p{color:#fffc;line-height:1.5}.detail-grid{display:grid;gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.9rem}.details-modal .tag{color:var(--color-gray-light)}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.tag{color:var(--color-gray-dark);font-size:var(--font-size-sm);display:flex;gap:var(--spacing-xs)}.modal-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:flex-start}.price-info{display:flex;flex-direction:column;gap:.25rem}.price-info .price{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.price-note{color:#fff9;font-size:.8rem}.buy-button.primary{background:var(--color-primary);border:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.buy-button.primary:hover{background:var(--color-primary-dark);transform:translateY(-2px)}button.story-btn{padding:.35rem}.artist-link{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#fffc;background:#00000070;font-size:.8rem;cursor:pointer;transition:all .2s;padding:.25rem .5rem;border-radius:4px}.artist-link:hover{background:#ffffff1a;color:var(--color-primary)}.artist-avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff1a;flex-shrink:0}.artist-profile-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-image-container{transition:transform .2s ease}.artist-link:hover .profile-image-container{transform:scale(1.05)}.profile-image{transition:opacity .2s ease}.profile-image-fallback{color:#fff9;border:1px solid rgba(255,255,255,.2)}.modal-content.details-modal{padding:0;background:#0009}.modal-content.details-modal .modal-header h2{color:#fff}.bio-toggle-button{display:none;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:0 0 8px 8px;cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;transition:all .2s;align-self:center}@media (max-width: 768px){.bio-toggle-button{display:flex}.bio-section{display:none}.bio-section.mobile-expanded{display:flex;margin-top:1rem}.modal-footer{flex-direction:column;gap:.5rem;align-items:stretch}.privacy-indicator{justify-content:center}}.bio-section{flex-direction:column;margin-top:2rem}.bio-card{padding:0 var(--spacing-md)}.bio-card:last-child{margin-bottom:0}.bio-card h3{font-size:1.3rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.bio-card p{line-height:1.3;font-size:.9rem}.detail-card{padding:1.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;margin:1rem}.detail-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.detail-header h4{color:#ffffffe6;font-size:1.1rem;font-weight:600;margin:0}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}.privacy-indicator{color:#fff;display:flex}.privacy-indicator .public-badge,.privacy-indicator .private-badge{background:#fff5;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-lg);font-size:.8em}.paypal-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;overflow-y:scroll;display:flex;justify-content:center;align-items:center;align-content:space-around;padding:2rem 0;flex-wrap:wrap}.paypal-modal{position:relative;background:#ffffffe6;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);z-index:1001;width:90%;max-width:600px;overflow:hidden}.next-steps{padding:var(--spacing-md);background:#fff;border-radius:var(--border-radius-md)}.order-actions{display:flex;gap:1rem}.paypal-modal-header{position:sticky;top:0;display:flex;width:100%;flex-direction:row;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffb0;padding:1rem;z-index:10;box-shadow:0 -1px 8px -4px #000}.order-confirmation h4{text-align:center}.order-confirmation,.paypal-purchase-form{padding:var(--spacing-md);display:flex;flex-direction:column;gap:1rem}.purchase-summary span{font-weight:600;color:var(--color-primary)}.purchase-summary p,.order-details p,.artwork-summary p{display:flex;justify-content:space-between;flex-wrap:wrap;font-size:.85em;margin:0;border-bottom:1px solid #eee;padding:.3rem 0}.purchase-summary,.order-details,.artwork-summary{background:#fff;padding:var(--spacing-md);border-radius:.5rem}.next-steps li{font-size:.85rem}.sale-status.sold,.sale-status.pending{padding:.5rem 3rem;color:#fff;font-weight:800;rotate:324deg;display:block;position:absolute;top:11px;left:-32px;text-align:center;box-shadow:3px 4px 6px #00000080;border:1px solid #fff4;letter-spacing:.3em;font-size:.9em}.sale-status.sold{background:var(--app-gradient-red)}.sale-status.pending{background:var(--app-gradient-yellow);top:40px;left:-50px}.card-content .dimenssions{margin-bottom:1rem}.card-content .model-name{margin-bottom:0;font-size:1.2rem}.mini-spinner{width:6px;height:6px;background-color:#ff6b35;border-radius:50%;box-shadow:0 0 10px #ff6b35,0 0 20px #ff6b35,0 0 30px #ff6b35;animation:pulse-glow 1.5s ease-in-out infinite}@keyframes pulse-glow{0%,to{transform:scale(1);box-shadow:0 0 10px #ff6b35,0 0 20px #ff6b35,0 0 30px #ff6b35;opacity:1}50%{transform:scale(2);box-shadow:0 0 15px #ff6b35,0 0 25px #ff9b77,0 0 35px #ff6b35;opacity:.8}}.canvas-frame-customizer div.background-save-indicator{display:flex;flex-direction:row;bottom:auto;height:auto;left:auto;right:auto;align-items:center;background:#ffffffd1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem 1rem;border-radius:8rem;width:auto;align-self:center}.background-save-indicator span{padding:0 .5rem}.paypal-modal-header,.paypal-purchase-form{color:#000}.auction-section{display:flex;flex-direction:column;width:100%}.price-bid-container{display:flex;align-items:center;width:100%}.price-bid-container .price-section{flex:1;min-width:0}.price-bid-container .bid-button{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-white);border:none;border-radius:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-xs);min-width:fit-content}.price-bid-container .bid-button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.buy-now-button.full-width{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-secondary);color:var(--color-white);border:none;border-radius:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);text-align:center;flex-direction:row}.buy-now-button.full-width:hover{background:var(--color-secondary-dark);transform:translateY(-1px)}.purchase-section{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.purchase-section .price-section{flex:1;min-width:0}.purchase-section .buy-button{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-xs);min-width:fit-content}.purchase-section .buy-button:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.coming-soon{padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-md);text-align:center}.offer-input-section{display:flex;justify-content:space-around}.offer-input-container{display:flex;max-width:50%}.offer-input-container .currency-symbol{padding:0;display:flex;align-items:center;justify-content:center;width:30px;min-width:30px;background:#fff8;border-radius:4px 0 0 4px;border:1px solid transparent}.offer-input-container input{padding:var(--spacing-sm);width:100%;background:#fff5;border:1px solid #fff6;border-radius:0 4px 4px 0}.offer-input-section button{width:40%}@media (max-width: 768px){.price-bid-container{align-items:stretch}.price-bid-container .bid-button{justify-content:center}.purchase-section{align-items:stretch}.purchase-section .buy-button{justify-content:center}}.ai-room-thumbnails{position:absolute;bottom:8px;right:8px;display:flex;gap:4px;align-items:center;z-index:2}.ai-room-thumb{width:40px;height:30px;border-radius:4px;overflow:hidden;border:2px solid rgba(255,255,255,.9);box-shadow:0 2px 8px #0000004d;transition:transform .2s ease}.ai-room-thumb:hover{transform:scale(1.1);border-color:#fff}.ai-room-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ai-room-more{background:#000c;color:#fff;padding:2px 6px;border-radius:12px;font-size:10px;font-weight:500;line-height:1;border:1px solid rgba(255,255,255,.3)}.ai-room-thumb{cursor:pointer}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}.modal-overlay{animation:fadeIn .3s ease-out}.modal-overlay.closing{animation:fadeOut .3s ease-in}.modal-content,.paypal-modal,.ai-room-modal-content,.auction-modal-content{animation:slideUp .4s cubic-bezier(.25,.46,.45,.94)}.modal-overlay.closing .modal-content,.modal-overlay.closing .paypal-modal,.modal-overlay.closing .ai-room-modal-content,.modal-overlay.closing .auction-modal-content{animation:slideDown .3s cubic-bezier(.55,.06,.68,.19)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.ai-room-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#5c5c5cd6;display:flex;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ai-room-modal-content{max-width:90vw;width:800px;display:flex;flex-direction:column;overflow:hidden}.ai-room-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eeeeee54;box-shadow:0 2px 21px #0008}.ai-room-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#fff}.ai-room-counter{color:#666;font-size:14px}.ai-room-close-btn{background:none;border:none;padding:8px;cursor:pointer;border-radius:6px;color:#fff;transition:all .2s ease}.ai-room-close-btn:hover{background:#f0f0f0;color:#333}.ai-room-image-container{position:relative;flex:1;display:flex;align-items:center;justify-content:center;padding:0 var(--spacing-sm)}.ai-room-modal-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.ai-room-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00000026;padding:0;color:#000}.ai-room-nav-btn:hover{background:#fff;transform:translateY(-50%) scale(1.1)}.ai-room-prev-btn{left:20px}.ai-room-next-btn{right:20px}.ai-room-thumbnails-strip{display:flex;gap:8px;padding:16px 20px;border-top:1px solid #eeeeee54;overflow-x:auto;justify-content:center;box-shadow:0 -2px 21px #0008}.ai-room-strip-thumb{width:60px;height:45px;border-radius:6px;overflow:hidden;border:2px solid transparent;cursor:pointer;transition:all .2s ease;flex-shrink:0}.ai-room-strip-thumb:hover{border-color:#fff;transform:scale(1.05)}.ai-room-strip-thumb.active{border-color:#fff;box-shadow:0 0 0 2px #007bff40}.ai-room-strip-thumb img{width:100%;height:100%;object-fit:cover}@media (max-width: 768px){.ai-room-modal-content{width:95vw}.ai-room-nav-btn{width:40px;height:40px}.ai-room-prev-btn{left:10px}.ai-room-next-btn{right:10px}.ai-room-thumbnails-strip{padding:12px 16px}.ai-room-strip-thumb{width:50px;height:37px}}.anonymous-offer-modal{max-width:500px;width:90vw;max-height:90vh;background:#fff;border-radius:12px;overflow:hidden;padding:0}.anonymous-offer-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #ccc;background:var(--surface-color-dark)}.anonymous-offer-modal .modal-header h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.anonymous-offer-modal .modal-close-btn{background:none;border:none;color:#ccc;cursor:pointer;padding:.5rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.anonymous-offer-modal .modal-close-btn:hover{background:var(--surface-color-lighter);color:var(--text-primary)}.anonymous-offer-modal .modal-body{padding:1.5rem}.anonymous-offer-modal .modal-description{margin:0 0 1.5rem;line-height:1.5}.anonymous-offer-modal .offer-form{display:flex;flex-direction:column;gap:1rem}.anonymous-offer-modal .form-group{display:flex;flex-direction:column;gap:.5rem}.anonymous-offer-modal .form-group label{color:var(--text-primary);font-weight:500;font-size:.9rem}.anonymous-offer-modal .form-input{padding:.75rem;border:1px solid #ccc;border-radius:6px;background:#f9f9f9;color:#333;font-size:1rem;transition:all .2s ease;width:100%}.anonymous-offer-modal .form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.anonymous-offer-modal .form-input::placeholder{color:var(--text-secondary)}.anonymous-offer-modal .offer-input-container{position:relative;display:flex;align-items:center;max-width:100%}.anonymous-offer-modal .offer-input-container .currency-symbol{position:absolute;color:var(--text-secondary);font-weight:500;z-index:1}.anonymous-offer-modal .offer-input-container .form-input{padding-left:2rem}.anonymous-offer-modal .minimum-offer-note{font-size:.85rem;color:var(--text-secondary);margin-top:.25rem}.anonymous-offer-modal .modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color);background:var(--surface-color-dark)}.anonymous-offer-modal .btn-secondary{padding:.75rem 1.5rem;border:1px solid var(--color-primary);border-radius:6px;background:transparent;color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.anonymous-offer-modal .btn-secondary:hover:not(:disabled){background:var(--surface-color-lighter);border-color:var(--text-secondary)}.anonymous-offer-modal .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.anonymous-offer-modal .btn-primary{padding:.75rem 1.5rem;border:none;border-radius:6px;background:var(--color-primary);color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:120px}.anonymous-offer-modal .btn-primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.anonymous-offer-modal .btn-primary:disabled{opacity:.6;cursor:not-allowed}.anonymous-offer-modal .spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.anonymous-offer-modal{width:95vw}.anonymous-offer-modal .modal-header,.anonymous-offer-modal .modal-body,.anonymous-offer-modal .modal-footer{padding:1rem}.anonymous-offer-modal .modal-footer{flex-direction:column;gap:.75rem}.anonymous-offer-modal .btn-secondary,.anonymous-offer-modal .btn-primary{width:100%;justify-content:center}}.ai-room-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.ai-room-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3)}.ai-room-generator-overlay{z-index:1100}.ai-room-generator-modal{width:90vw;max-width:1200px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;padding:0}.ai-room-generator-modal .modal-header{flex-shrink:0}.ai-room-generator-body{flex:1;overflow-y:auto;padding:0}.ai-room-generator-body .ai-room-visualizer{padding:1.5rem}@media (max-width: 768px){.ai-room-generator-modal{width:100vw;max-width:100vw}.ai-room-btn{font-size:.8rem;padding:.4rem .8rem}.ai-room-btn span{display:none}}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.8) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-sm);color:var(--color-text);font-weight:650}.form-input{width:100%;min-height:var(--control-height-md, 42px);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text);background:var(--color-surface-solid, var(--color-white));border:1px solid var(--color-border);border-radius:var(--radius-sm, var(--border-radius-sm));font:inherit;font-size:var(--font-size-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.form-input.disabled,.form-input:disabled{color:var(--color-gray);background-color:var(--color-background-alt);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--color-gray-light);opacity:1}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--color-gray-light)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--color-gray-light);opacity:1}.checkbox-group{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:var(--radius-sm, 6px);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.checkbox-list .checkbox-group{flex-direction:row}.checkbox-group:hover{background:#ffffff0d}.checkbox-group input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;flex-shrink:0;margin:0;border:2px solid rgba(255,255,255,.3);border-radius:3px;cursor:pointer;position:relative;transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.checkbox-group input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}.checkbox-group input[type=checkbox]:checked:after{content:"";position:absolute;top:2px;left:5px;width:6px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-group input[type=checkbox]:focus-visible{outline:none;box-shadow:var(--focus-ring-dark, 0 0 0 2px rgba(255, 255, 255, .2))}.checkbox-group span{color:#fffc;font-size:.9rem;cursor:pointer;transition:color var(--transition-fast)}.checkbox-group:hover span{color:#ffffffe6}.checkbox-group input[type=checkbox]:checked+span{font-weight:600}.btn,.btn-primary,.btn-secondary,.btn-danger,.btn-ghost{min-height:var(--control-height-md);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;border:1px solid transparent;border-radius:var(--radius-pill);font:inherit;font-size:var(--font-size-sm);font-weight:750;line-height:1;text-decoration:none;cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.btn:hover,.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-ghost:hover:not(:disabled){transform:translateY(-1px)}.btn:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-danger:focus-visible,.btn-ghost:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled,.btn-ghost:disabled{opacity:.58;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-text);color:var(--color-text-inverse);border-color:var(--color-text)}.btn-secondary{background:var(--color-surface-solid);color:var(--color-text);border-color:var(--color-border)}.btn-danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-ghost{background:transparent;color:var(--color-text);border-color:transparent}.btn-icon,.icon-button{width:var(--control-height-md);min-width:var(--control-height-md);height:var(--control-height-md);padding:0;border-radius:var(--radius-pill)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-index-modal);display:flex;align-items:center;justify-content:center;padding:var(--content-padding);background:var(--overlay-backdrop);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:modalFadeIn .22s ease-out}.modal-overlay.closing{animation:modalFadeOut .2s ease-in}.modal-content,.modal-panel{width:min(100%,720px);max-height:min(90vh,900px);overflow:auto;border:1px solid rgba(255,255,255,.45);border-radius:var(--radius-xl);background:var(--color-surface-solid);color:var(--color-text);box-shadow:var(--shadow-xl);animation:modalSlideUp .28s cubic-bezier(.25,.46,.45,.94)}.modal-overlay.closing .modal-content,.modal-overlay.closing .modal-panel,.modal-overlay.closing .paypal-modal,.modal-overlay.closing .ai-room-modal-content,.modal-overlay.closing .auction-modal-content{animation:modalSlideDown .2s cubic-bezier(.55,.06,.68,.19)}.modal-header,.modal-footer{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem}.modal-header{justify-content:space-between;border-bottom:1px solid var(--color-border)}.modal-footer{justify-content:flex-end;border-top:1px solid var(--color-border)}.modal-close,.modal-close-btn,.close-button,.close-btn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--control-height-sm);width:var(--control-height-sm);height:var(--control-height-sm);border:1px solid transparent;border-radius:var(--radius-pill);background:transparent;color:inherit;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.modal-close:hover,.modal-close-btn:hover,.close-button:hover,.close-btn:hover{background:var(--color-surface-hover);border-color:var(--color-border)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalSlideDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(18px) scale(.98)}}@media (max-width: 640px){.modal-overlay{align-items:flex-end;padding:.75rem}.modal-content,.modal-panel{width:100%;max-height:calc(100dvh - 1.5rem);border-radius:var(--radius-lg)}}.toast-notification,.toast{position:fixed;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));z-index:var(--z-index-toast);width:max-content;max-width:min(360px,calc(100vw - 1.5rem));min-height:0;padding:.6rem .8rem;border:1px solid var(--color-border);border-left:3px solid var(--color-text);border-radius:var(--radius-md);background:#fffffff7;box-shadow:0 12px 28px #18181b29;color:var(--color-text);font-size:.84rem;font-weight:650;line-height:1.25;text-align:left;overflow-wrap:anywhere;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:toastSlideIn .22s ease}.toast-success,.toast.success{border-left-color:var(--color-success)}.toast-error,.toast.error{border-left-color:var(--color-error)}.toast-warning,.toast.warning{border-left-color:#d97706}.toast-info,.toast.info{border-left-color:var(--color-secondary)}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.toast-notification,.toast{right:.75rem;left:.75rem;width:auto;max-width:none}}.ar-view-page{min-height:100vh;overflow:hidden;position:relative;padding-bottom:var(--bottom-nav-height)}.ar-container{display:flex;flex-direction:column;width:100%;position:relative}.ar-wrapper{touch-action:none!important;position:relative;width:100%;height:500px;max-height:var(--content-height-max)}.ar-not-supported{text-align:center;color:var(--color-error);margin-bottom:var(--spacing-md);background-color:var(--color-error-light);padding:var(--spacing-md);border-radius:var(--border-radius-sm);max-width:100%}.three-canvas{touch-action:none!important;outline:none;display:block!important}@supports (-webkit-touch-callout: none){.ar-view-page{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}.ar-wrapper canvas,.three-canvas{height:var(--content-height-max)!important}}@media (max-width: var(--breakpoint-md)){.ar-wrapper{min-height:350px}}@media (max-width: var(--breakpoint-xs)){.ar-wrapper{min-height:300px}.controls p{font-size:var(--font-size-sm);text-align:center}}@media (orientation: landscape) and (max-height: 500px){.ar-wrapper{min-height:200px;max-height:50vh}}.webcam-container{width:100%;max-width:800px;margin:1rem auto;position:relative}video{width:100%;max-width:100%;max-height:var(--camera-max-height);object-fit:contain;border-radius:var(--border-radius-sm);background-color:var(--color-black)}.camera-controls{position:absolute;bottom:0;width:100%;display:flex;justify-content:space-between;align-items:center;height:100%;flex-direction:column}.camera-btn{background:var(--color-white);border:none;color:var(--color-black);text-align:center;text-decoration:none;display:inline-block;margin:var(--spacing-sm) 0;cursor:pointer;border-radius:var(--border-radius-circle);transition:background-color var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;touch-action:manipulation;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:40px;width:40px;padding:0}.camera-btn:hover{background-color:#f0f0f0}.camera-btn:active{transform:scale(.95)}.camera-selector{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.camera-selector label{font-weight:700;min-width:80px;display:none}@media (orientation: portrait){.webcam-container{height:auto}}.camera-select{font-family:inherit;font-size:inherit;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-sm);border-radius:var(--border-radius-lg);background:var(--color-primary);color:var(--color-white);font-weight:var(--font-weight-bold);margin-top:var(--spacing-sm);border:none}.light{color:var(--color-gray-light)}.gray{color:var(--color-gray)}.sticky{position:sticky;top:0}.purple{background:var(--app-gradient-purple)}.red{background:var(--app-gradient-red)}.blue{background:var(--app-gradient-blue)}.green{background:var(--app-gradient-green)}.yellow{background:var(--app-gradient-yellow)}.lightText{color:var(--color-gray-light)}.darkText{color:var(--color-gray-dark)}.bold{font-weight:700}.absolute{position:absolute}.absoluteTopLeft{position:absolute;top:.5rem;left:.5rem}.absoluteTopRight{position:absolute;top:.5rem;right:.5rem}.paddingSmall{padding:var(--spacing-sm)}.paddingMedium{padding:var(--spacing-md)}.paddingLarge{padding:var(--spacing-lg)}.glass{background:var(--color-white-80);border-radius:8px;box-shadow:0 2px 8px #0003;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);padding:var(--spacing-md)}.glass-texture{background:#ffffffbf;box-shadow:0 2px 8px #0003;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px)}.dark-glass{background:#000000a8;border:1px solid rgb(255 255 255 / 30%);box-shadow:0 6px 12px -5px #000,0 0 150px 100px #0005 inset;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem;margin-top:.5rem;width:100%}.checkbox-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;width:100%}.form-section{margin-bottom:2rem}.form-section h2{color:#fff;font-size:1.4rem;font-weight:600;margin-bottom:1.5rem}.flex{display:flex}.flex-row{display:flex;flex-direction:row}.flex-column{display:flex;flex-direction:column}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-around{display:flex;justify-content:space-around;align-items:center}.flex-start{display:flex;align-items:flex-start}.flex-end{display:flex;align-items:flex-end}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.photo-editor-main{position:fixed;padding:var(--spacing-md);height:100%;width:100%;top:0}.photo-editor-content{display:flex;flex-direction:column;height:100%;gap:var(--spacing-md);overflow:scroll}.saved-settings-notice{margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background-color:var(--color-primary-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:var(--color-success)}.photo-editor-modal{flex:1;display:flex;flex-direction:column;padding:var(--spacing-sm);background:#fff3;border-radius:13px;box-shadow:0 1px 90px -9px #ffffff4d,0 0 176px #000000bf inset}.canvas-container{top:0;max-width:100%;margin-bottom:var(--spacing-sm);display:flex;justify-content:center;position:relative;max-height:40vh}.editor-canvas{display:block;border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);max-width:100%;touch-action:pan-y;max-height:100%}.canvas-container--expanded{width:100%!important;height:100%!important;max-height:100%!important}.editor-canvas--expanded{width:100%!important;height:auto}.filter-tabs{display:flex;margin-bottom:0;gap:var(--spacing-xs)}.filter-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-sm);border:none;background:transparent;color:var(--color-gray);border-radius:var(--border-radius-md) var(--border-radius-md) 0 0;cursor:pointer;transition:var(--transition-fast);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--color-gray-light)}.filter-tab:hover{background-color:var(--color-gray-lighter)}.filter-tab--active{background:var(--color-white);color:var(--color-primary);font-weight:var(--font-weight-medium)}.filter-tab__label{font-size:var(--font-size-xs)}.filter-slider-container{padding:var(--spacing-lg);background-color:var(--color-white-90);border-radius:0 0 var(--border-radius-md) var(--border-radius-md)}.filter-slider-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.filter-icon{color:var(--color-primary)}.filter-title{margin:0;color:var(--color-gray-dark);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.filter-value{margin-left:auto;font-weight:var(--font-weight-bold);color:var(--color-primary);font-size:var(--font-size-lg)}.filter-slider{width:100%;height:8px;border-radius:var(--border-radius-sm);outline:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:var(--transition-fast)}.filter-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:var(--border-radius-circle);background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-sm)}.filter-slider::-moz-range-thumb{width:20px;height:20px;border-radius:var(--border-radius-circle);background:var(--color-primary);cursor:pointer;border:none;box-shadow:var(--shadow-sm)}.filter-range{display:flex;justify-content:space-between;margin-top:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-gray)}.filter-overview{display:none;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.filter-quick-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-gray-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-fast)}.filter-quick-item:hover{background-color:var(--color-gray)}.filter-quick-item--active{background-color:var(--color-primary-light);border:1px solid var(--color-primary)}.filter-quick-icon{color:var(--color-gray);transition:var(--transition-fast)}.filter-quick-item--active .filter-quick-icon{color:var(--color-primary)}.filter-quick-label{color:var(--color-gray-dark);font-weight:var(--font-weight-medium)}.filter-quick-value{margin-left:auto;font-weight:var(--font-weight-bold);color:var(--color-gray);transition:var(--transition-fast)}.filter-quick-item--active .filter-quick-value{color:var(--color-primary)}.action-btn{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;transition:var(--transition-fast);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border:none;text-align:center}.action-btn--secondary{border:1px solid var(--color-gray-light);background:var(--color-white);color:var(--color-gray-dark)}.action-btn--secondary:hover{background-color:var(--color-gray-lighter);border-color:var(--color-gray)}.action-btn--primary{background:var(--color-primary);color:var(--color-white);margin-left:auto}.action-btn--primary:hover{background-color:var(--color-primary-dark)}@media (max-width: 768px){.filter-tabs{gap:2px}.filter-tab{padding:var(--spacing-sm) var(--spacing-xs);font-size:10px}.filter-tab__label{display:none}.filter-overview{grid-template-columns:1fr}.action-btn--primary{margin-left:0;order:-1}}@media (max-width: 480px){.filter-slider-container{padding:var(--spacing-md)}.filter-slider-header{flex-wrap:wrap;gap:var(--spacing-sm)}.filter-value{margin-left:0;order:-1;width:100%;text-align:center}}#root{height:100%;width:100%;display:flex;flex-direction:column}.app-container{display:flex;flex-direction:column;height:100%;width:100%;overflow-x:hidden;padding-bottom:var(--bottom-nav-height);background:var(--app-gradient);background-color:#ffffffa6;background-blend-mode:soft-light}header{background-color:var(--color-background-dark);padding:var(--spacing-md);color:var(--color-text-inverse);text-align:center;position:sticky;top:0;z-index:var(--z-index-header);box-shadow:var(--shadow-md)}.navigation{background:var(--app-gradient);box-shadow:0 2px 4px #0000001a;position:relative;z-index:100}header h1{margin:0;font-size:clamp(1.25rem,5vw,2rem)}main{flex:1;margin:0 auto;width:100%;box-sizing:border-box}footer{bottom:0;width:100%;background-color:var(--color-background-dark);padding:0;text-align:center;font-size:var(--font-size-sm);margin-bottom:var(--bottom-nav-height);z-index:11}.camera-page,.edit-page,.canvas-setup-page,.ar-view-page{display:flex;flex-direction:column;align-items:center}.camera-page,.edit-page,.canvas-setup-page{height:100vh;z-index:10000;position:fixed;background:#000000a3;width:100%;top:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-height:100%}.setup-container{display:flex;flex-direction:row;gap:var(--spacing-xl);width:100%;position:relative;align-items:center}.config-panel,.preview-panel{flex:1;min-width:0}.aspect-ratio-info{display:none!important}@supports (padding: env(safe-area-inset-bottom)){.app-container{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}footer{margin-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}}@media (max-width: var(--breakpoint-md)){.setup-container{flex-direction:column;gap:var(--spacing-md)}h2{font-size:var(--font-size-lg);text-align:center}}@media (max-width: var(--breakpoint-xs)){button{font-size:var(--font-size-sm)}.app-container{padding-bottom:calc(var(--bottom-nav-height) - 10px)}}@media (orientation: landscape) and (max-height: 500px){header{padding:var(--spacing-sm)}header h1{font-size:var(--font-size-lg)}h2{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}}canvas[data-engine="three.js webgl"]{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:9999!important;pointer-events:auto!important}#webxr-overlay{pointer-events:auto!important;z-index:10000!important}
