.layer-gallery-overlay{position:fixed;inset:0;z-index:60;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:galleryFadeIn .2s ease-out}@keyframes galleryFadeIn{0%{opacity:0}to{opacity:1}}.layer-gallery{width:100%;max-width:720px;max-height:85vh;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:gallerySlideUp .25s ease-out}.dark .layer-gallery{background:#1e293b;box-shadow:0 20px 60px #00000080}@keyframes gallerySlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.layer-gallery__header{padding:16px 20px 12px;border-bottom:1px solid #e2e8f0}.dark .layer-gallery__header{border-color:#334155}.layer-gallery__title-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.layer-gallery__title{font-size:15px;font-weight:700;color:#0f172a;flex:1;font-family:Inter,sans-serif}.dark .layer-gallery__title{color:#e2e8f0}.layer-gallery__close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:8px;color:#94a3b8;transition:all .15s;flex-shrink:0}.layer-gallery__close:hover{background:#f1f5f9;color:#475569}.dark .layer-gallery__close:hover{background:#334155;color:#cbd5e1}.layer-gallery__search{position:relative;margin-bottom:8px}.layer-gallery__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8}.layer-gallery__search-input{width:100%;padding:8px 32px 8px 30px;border-radius:10px;border:1px solid #e2e8f0;font-size:12px;color:#1e293b;background:#f8fafc;outline:none;transition:border-color .15s;font-family:Inter,sans-serif}.layer-gallery__search-input:focus{border-color:#3b82f6}.dark .layer-gallery__search-input{background:#0f172a;border-color:#334155;color:#e2e8f0}.layer-gallery__search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:2px;border-radius:4px;color:#94a3b8}.layer-gallery__search-clear:hover{color:#64748b}.layer-gallery__filters{display:flex;flex-direction:column;gap:6px}.layer-gallery__filter-row{display:flex;align-items:center;gap:8px}.layer-gallery__pills{display:flex;gap:4px;flex:1}.layer-gallery__pill{display:flex;align-items:center;gap:3px;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:500;color:#64748b;background:transparent;border:1px solid transparent;transition:all .15s;white-space:nowrap;cursor:pointer}.layer-gallery__pill:hover{background:#f1f5f9}.dark .layer-gallery__pill:hover{background:#1e293b}.layer-gallery__pill--active{background:#eff6ff;color:#2563eb;border-color:#93c5fd}.dark .layer-gallery__pill--active{background:#1e3a5f;color:#60a5fa;border-color:#1d4ed8}.layer-gallery__kind-select{padding:4px 8px;border-radius:6px;font-size:10px;border:1px solid #e2e8f0;color:#475569;background:#fff;cursor:pointer;outline:none}.dark .layer-gallery__kind-select{background:#0f172a;border-color:#334155;color:#cbd5e1}.layer-gallery__content{flex:1;overflow-y:auto;padding:16px 20px}.layer-gallery__loading{display:flex;align-items:center;justify-content:center;padding:48px}.layer-gallery__empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;text-align:center}.layer-gallery__empty p{font-size:13px;color:#64748b;font-weight:500}.layer-gallery__empty-hint{font-size:11px!important;color:#94a3b8!important;font-weight:400!important}.layer-gallery__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.layer-gallery__pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 0 4px}.layer-gallery__page-btn{padding:6px;border-radius:8px;color:#64748b;transition:all .15s}.layer-gallery__page-btn:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.dark .layer-gallery__page-btn:hover:not(:disabled){background:#334155;color:#e2e8f0}.layer-gallery__page-btn:disabled{opacity:.3;cursor:not-allowed}.layer-gallery__page-info{font-size:11px;color:#64748b;font-variant-numeric:tabular-nums}.layer-gallery__total{margin-left:6px;color:#94a3b8}.layer-card{display:flex;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;background:#fff;transition:all .2s}.layer-card:hover{border-color:#93c5fd;box-shadow:0 4px 16px #3b82f61a}.dark .layer-card{background:#0f172a;border-color:#1e293b}.dark .layer-card:hover{border-color:#1d4ed8;box-shadow:0 4px 16px #3b82f626}.layer-card__strip{width:4px;flex-shrink:0}.layer-card__body{flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:6px;min-width:0}.layer-card__header{display:flex;align-items:center;gap:6px}.layer-card__name{font-size:12px;font-weight:600;color:#0f172a;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Inter,sans-serif}.dark .layer-card__name{color:#e2e8f0}.layer-card__kind{display:flex;align-items:center;gap:3px;font-size:9px;color:#94a3b8;white-space:nowrap}.layer-card__desc{font-size:10px;color:#64748b;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dark .layer-card__desc{color:#94a3b8}.layer-card__stats{display:flex;flex-wrap:wrap;gap:4px}.layer-card__stat{display:flex;align-items:center;gap:3px;font-size:9px;color:#64748b;background:#f1f5f9;padding:2px 6px;border-radius:4px}.dark .layer-card__stat{background:#1e293b;color:#94a3b8}.layer-card__stat--geom{color:#3b82f6}.layer-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:4px}.layer-card__author{display:flex;align-items:center;gap:4px;font-size:9px;color:#94a3b8}.layer-card__clone-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:10px;font-weight:600;color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);transition:all .2s;cursor:pointer;border:none;white-space:nowrap}.layer-card__clone-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 8px #2563eb4d}.layer-card__clone-btn:disabled{opacity:.6;cursor:default}.layer-card__clone-btn--done{background:linear-gradient(135deg,#10b981,#059669)}.layer-card__login-hint{font-size:9px;color:#94a3b8;font-style:italic}@media (max-width: 640px){.layer-gallery-overlay{padding:8px}.layer-gallery{max-height:90vh;border-radius:12px}.layer-gallery__grid{grid-template-columns:1fr}.layer-gallery__filter-row{flex-wrap:wrap}}.share-modal-overlay{position:fixed;inset:0;z-index:70;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:shareFadeIn .2s ease-out}@keyframes shareFadeIn{0%{opacity:0}to{opacity:1}}.share-modal{width:100%;max-width:440px;max-height:85vh;background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:shareSlideUp .25s ease-out}.dark .share-modal{background:#1e293b}@keyframes shareSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.share-modal__header{display:flex;align-items:center;gap:10px;padding:16px 20px 12px;border-bottom:1px solid #e2e8f0}.dark .share-modal__header{border-color:#334155}.share-modal__title-col{flex:1}.share-modal__title{font-size:14px;font-weight:700;color:#0f172a;font-family:Inter,sans-serif}.dark .share-modal__title{color:#e2e8f0}.share-modal__subtitle{font-size:11px;color:#94a3b8;display:block;margin-top:1px}.share-modal__close{padding:6px;border-radius:8px;color:#94a3b8;transition:all .15s}.share-modal__close:hover{background:#f1f5f9;color:#475569}.dark .share-modal__close:hover{background:#334155;color:#cbd5e1}.share-modal__tabs{display:flex;gap:4px;padding:8px 20px}.share-modal__tab{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;font-size:11px;font-weight:600;color:#64748b;background:transparent;border:none;cursor:pointer;transition:all .15s}.share-modal__tab:hover{background:#f1f5f9}.dark .share-modal__tab:hover{background:#1e293b}.share-modal__tab--active{background:#eff6ff;color:#7c3aed}.dark .share-modal__tab--active{background:#2e1065;color:#a78bfa}.share-modal__permission{display:flex;align-items:center;gap:8px;padding:4px 20px 8px}.share-modal__permission-label{font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.share-modal__permission-pills{display:flex;gap:4px}.share-modal__perm-pill{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:500;color:#64748b;background:transparent;border:1px solid transparent;cursor:pointer;transition:all .15s}.share-modal__perm-pill:hover{background:#f1f5f9}.share-modal__perm-pill--active{background:#f5f3ff;color:#7c3aed;border-color:#c4b5fd}.dark .share-modal__perm-pill--active{background:#2e1065;color:#a78bfa;border-color:#5b21b6}.share-modal__form{padding:0 20px 12px}.share-modal__search{position:relative}.share-modal__search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8}.share-modal__search-input{width:100%;padding:8px 36px 8px 30px;border-radius:10px;border:1px solid #e2e8f0;font-size:12px;color:#1e293b;background:#f8fafc;outline:none;transition:border-color .15s;font-family:Inter,sans-serif}.share-modal__search-input:focus{border-color:#7c3aed}.dark .share-modal__search-input{background:#0f172a;border-color:#334155;color:#e2e8f0}.share-modal__search-spin{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#7c3aed}.share-modal__results{margin-top:6px;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.dark .share-modal__results{border-color:#334155}.share-modal__result-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:#fff;cursor:pointer;transition:background .12s;text-align:left}.share-modal__result-item:hover:not(:disabled){background:#f5f3ff}.dark .share-modal__result-item{background:#0f172a}.dark .share-modal__result-item:hover:not(:disabled){background:#1e1b4b}.share-modal__result-item+.share-modal__result-item{border-top:1px solid #f1f5f9}.dark .share-modal__result-item+.share-modal__result-item{border-color:#1e293b}.share-modal__result-avatar{width:28px;height:28px;border-radius:50%;background:#f1f5f9;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.dark .share-modal__result-avatar{background:#334155}.share-modal__avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.share-modal__result-name{flex:1;font-size:12px;font-weight:500;color:#1e293b}.dark .share-modal__result-name{color:#e2e8f0}.share-modal__pro-badge{font-size:8px;font-weight:700;color:#f59e0b;background:#fef3c7;padding:1px 5px;border-radius:4px;text-transform:uppercase}.dark .share-modal__pro-badge{background:#451a03}.share-modal__result-action{font-size:10px;font-weight:600;color:#7c3aed;white-space:nowrap}.share-modal__group-form{display:flex;flex-direction:column;gap:8px}.share-modal__empty-hint{font-size:11px;color:#94a3b8;text-align:center;padding:12px}.share-modal__group-select{width:100%;padding:8px 10px;border-radius:10px;border:1px solid #e2e8f0;font-size:12px;color:#1e293b;background:#f8fafc;outline:none;cursor:pointer}.dark .share-modal__group-select{background:#0f172a;border-color:#334155;color:#e2e8f0}.share-modal__group-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:10px;font-size:12px;font-weight:600;color:#fff;background:linear-gradient(135deg,#7c3aed,#6d28d9);border:none;cursor:pointer;transition:all .2s}.share-modal__group-btn:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#5b21b6);box-shadow:0 2px 8px #6d28d94d}.share-modal__group-btn:disabled{opacity:.5;cursor:default}.share-modal__shares{flex:1;overflow-y:auto;padding:12px 20px 16px;border-top:1px solid #e2e8f0}.dark .share-modal__shares{border-color:#334155}.share-modal__shares-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;display:flex;align-items:center;gap:6px}.share-modal__shares-count{font-size:9px;background:#ede9fe;color:#7c3aed;padding:1px 6px;border-radius:10px;font-weight:700}.dark .share-modal__shares-count{background:#2e1065}.share-modal__shares-loading{display:flex;justify-content:center;padding:16px}.share-modal__shares-empty{font-size:11px;color:#94a3b8;text-align:center;padding:12px}.share-modal__shares-list{display:flex;flex-direction:column;gap:4px}.share-modal__share-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;transition:background .12s}.share-modal__share-row:hover{background:#f8fafc}.dark .share-modal__share-row:hover{background:#0f172a}.share-modal__share-icon{width:26px;height:26px;border-radius:50%;background:#f1f5f9;display:flex;align-items:center;justify-content:center;color:#64748b;flex-shrink:0}.dark .share-modal__share-icon{background:#334155;color:#94a3b8}.share-modal__share-info{flex:1;min-width:0}.share-modal__share-name{font-size:12px;font-weight:500;color:#1e293b;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dark .share-modal__share-name{color:#e2e8f0}.share-modal__share-perm{font-size:9px;color:#94a3b8}.share-modal__share-perm--edit{color:#3b82f6}.share-modal__share-perm--admin{color:#f59e0b}.share-modal__revoke-btn{padding:4px;border-radius:6px;color:#94a3b8;background:transparent;border:none;cursor:pointer;transition:all .15s;opacity:0}.share-modal__share-row:hover .share-modal__revoke-btn{opacity:1}.share-modal__revoke-btn:hover{color:#ef4444;background:#fef2f2}.dark .share-modal__revoke-btn:hover{background:#450a0a}@media (max-width: 480px){.share-modal-overlay{padding:8px}.share-modal{max-height:90vh;border-radius:12px}}
