*{box-sizing:border-box}body{margin:0;background:#f2f5f8;color:#172b3d;font:15px system-ui,Segoe UI,sans-serif}header{background:#142b42;color:white;padding:17px max(18px,calc((100vw - 1280px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}header h1{font-size:23px;margin:0}header small{font-size:14px;color:#9cb5ce}header a{color:white}.wrap{max-width:1280px;margin:26px auto;padding:0 18px}.filters,.inline,.flex{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.filters{margin-bottom:20px}input,select,button{font:inherit;border:1px solid #cdd7e0;border-radius:8px;padding:9px 11px;max-width:100%;background:white}button{background:#184d7a;color:white;cursor:pointer;border-color:#184d7a}button:hover{background:#123b60}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:16px}.card,.panel{background:white;border:1px solid #dce4ec;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0a23330a}.card>img,.empty{width:100%;height:160px;object-fit:contain;background:#e9eef3}.empty{display:grid;place-items:center;color:#889}.cardbody{padding:12px}.card h2{font-size:16px;margin:4px 0 7px}.card small,small{color:#63798c}.flag{font-size:22px}.panel{padding:18px;margin:12px 0}.panel label{display:block;margin:12px 0}.panel label input{display:block;width:100%;margin-top:6px}.error{color:#b00}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px}.admin-grid .panel{margin:0}.admin-grid h3{margin:0}.pill{background:#e7eef5;padding:4px 9px;border-radius:20px;font-size:12px}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-top:14px}.thumb{border:1px solid #e0e5eb;border-radius:8px;padding:5px}.thumb img{width:100%;height:90px;object-fit:contain}.thumb small{display:block;min-height:26px}.stack{display:grid;gap:5px}.stack button,.stack select{font-size:12px;padding:5px}.inline{margin:9px 0}.inline input{flex:1;min-width:120px}@media(max-width:480px){.admin-grid{grid-template-columns:1fr}.filters>*{width:100%}}

/* Galería pública Planeta 3D v1.1 */
.product-link{display:block;color:inherit;text-decoration:none;height:100%}.product-link>img,.product-link>.empty{width:100%;height:160px;object-fit:contain;background:#e9eef3}.product-link:hover h2{text-decoration:underline}.see-gallery{display:block;color:#184d7a;font-size:13px;font-weight:650;margin-top:10px}.gallery{max-width:950px}.gallery-stage{background:white;border:1px solid #dce4ec;border-radius:12px;padding:16px;text-align:center}.gallery-stage img{width:100%;height:min(65vw,570px);object-fit:contain}.gallery-stage p{color:#63798c}.gallery-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin:16px 0}.gallery-thumb{padding:5px;background:white;border:2px solid #dce4ec;border-radius:9px;cursor:pointer}.gallery-thumb.selected,.gallery-thumb:focus-visible{border-color:#184d7a}.gallery-thumb img{width:100%;height:90px;object-fit:contain}


/* Planeta 3D 1.2: catálogo compacto, menú lateral */
.catalog-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start;max-width:1320px}
.catalog-sidebar{background:white;border:1px solid #dce4ec;border-radius:13px;padding:13px;display:grid;gap:2px}
.cat-item{display:flex;justify-content:space-between;align-items:center;gap:6px;color:#172b3d;text-decoration:none;padding:12px 10px;border-radius:9px;font-size:14px}
.cat-item span{color:#69849d;font-size:12px}.cat-item.active{background:#e1eef9;color:#184d7a;font-weight:700}
.catalog-main{min-width:0}.catalog-main h2{font-size:19px;margin:0 0 12px}.catalog-main .filters{margin-bottom:10px}.catalog-count{color:#60768a;font-size:12px;margin:10px 0}
.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;align-items:stretch}
.catalog-card{display:flex;flex-direction:column;min-width:0}.catalog-cover{display:block;height:155px;background:#f3f6f9;overflow:hidden}
.catalog-cover img{display:block;width:100%;height:100%;object-fit:contain}.catalog-cover .empty{height:100%}
.catalog-card .cardbody{display:flex;flex-direction:column;flex:1;padding:10px;min-height:100px}.catalog-card h3{font-size:14px;line-height:1.3;margin:0 0 8px}.catalog-card small{font-size:11px}
.catalog-card-footer{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:auto;padding-top:13px}.catalog-view{padding:8px 12px;border:1px solid #ccd9e5;border-radius:8px;color:#17344c;text-decoration:none}
.admin-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:9px;margin:14px 0}.admin-photo{position:relative;border:1px solid #dce4ec;border-radius:9px;padding:6px;background:#fff;cursor:grab}.admin-photo img{display:block;width:100%;height:95px;object-fit:contain}.admin-photo.dragging{opacity:.45}.admin-photo .photo-actions{display:flex;justify-content:space-between;align-items:center;margin-top:5px}.admin-photo button{border:0;background:transparent;padding:4px;color:#5e7286;font-size:22px}.admin-photo button.is-cover{color:#db9800}.admin-photo button.delete-photo{color:#b52222}.admin-photo .delete-photo{position:absolute;right:3px;top:3px;background:white;border-radius:50%;font-size:18px}.admin-photo .drag-label{font-size:11px;color:#718496}
@media(max-width:700px){.catalog-layout{grid-template-columns:1fr}.catalog-sidebar{display:flex;overflow-x:auto;gap:5px;padding:7px}.cat-item{white-space:nowrap;padding:9px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-cover{height:140px}.admin-grid{grid-template-columns:1fr}}
/* v1.3: arbol lateral conservando estilo de catalogo */
.catalog-sidebar{display:block}.tree-root,.tree-period{margin:2px 0}.tree-root>summary,.tree-period>summary{display:flex;align-items:center;gap:4px;padding:8px 5px;cursor:pointer;font-size:13px;font-weight:650;list-style:none}.tree-root>summary::-webkit-details-marker,.tree-period>summary::-webkit-details-marker{display:none}.tree-root>summary:before,.tree-period>summary:before{content:'▸';color:#718496;font-size:12px}.tree-root[open]>summary:before,.tree-period[open]>summary:before{content:'▾'}.tree-root>summary a,.tree-period>summary a{flex:1;color:#172b3d;text-decoration:none}.tree-root>summary span,.tree-period>summary span{font-weight:400;color:#69849d;font-size:12px}.tree-period{padding-left:11px}.cat-item.sub{padding:7px 6px 7px 16px;font-size:12px;white-space:normal}.tree-root>.cat-item.sub{margin-left:12px}@media(max-width:700px){.catalog-sidebar{display:block;overflow:visible}.tree-root>summary{padding:10px 6px}.cat-item.sub{white-space:normal}}

/* Planeta 3D v1.4: identidad de cabecera */
header .brand-head{display:flex;align-items:center;gap:18px;min-width:0;flex-wrap:wrap}
header .brand-logo{display:block;flex:0 0 auto;width:245px;height:75px;overflow:hidden;border-radius:4px}
header .brand-logo img{display:block;width:100%;height:100%;object-fit:contain}
header .brand-section{color:#fff;font-size:15px;font-weight:700;letter-spacing:.055em;overflow-wrap:anywhere}
@media(max-width:700px){header .brand-head{gap:8px}header .brand-logo{width:175px;height:56px}header .brand-section{font-size:12px}}
