:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#18374b;background:#f2f7fa;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}.admin-top{height:76px;background:#fff;border-bottom:1px solid #dce7ed;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100% - 1220px)/2));position:sticky;top:0;z-index:2}.admin-brand{display:flex;align-items:center;gap:18px;color:#16405f;text-decoration:none;font-weight:750}.admin-brand img{width:190px;height:auto}.admin-brand span{border-left:1px solid #ccdce5;padding-left:18px}.back-link,footer a{color:#08799c;text-decoration:none;font-weight:650}.admin-shell{max-width:1220px;margin:36px auto;padding:0 22px}.panel{background:#fff;border:1px solid #dce7ed;border-radius:18px;box-shadow:0 10px 35px #153c5510;padding:24px}.login-panel{max-width:460px;margin:10vh auto 0}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em;color:#1594a9}.login-panel h1,.dashboard-head h1{font-size:clamp(1.7rem,3vw,2.4rem);margin:8px 0;color:#123b58}.login-panel>p,.dashboard-head p,.panel-title p{color:#637989;margin-top:5px}label{display:flex;flex-direction:column;gap:7px;font-size:.88rem;font-weight:700;color:#36546a;margin:14px 0}input,select,textarea{font:inherit;color:#18374b;border:1px solid #cedde5;border-radius:10px;padding:11px 12px;background:#fff;min-width:0;width:100%}input:focus,select:focus,textarea:focus{outline:3px solid #27b4c526;border-color:#1388a6}button{font:inherit;cursor:pointer;border:0;border-radius:10px;padding:11px 16px;font-weight:750}.primary{background:#087da4;color:#fff}.primary:hover{background:#076889}.secondary{background:#eaf2f6;color:#24536b}.danger{background:#fff0ee;color:#a4342c}.login-panel .primary{width:100%;margin-top:8px}.message{min-height:1.4em;color:#a4342c}.dashboard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dashboard-head h1{margin-bottom:4px}.admin-grid{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(480px,1.35fr);gap:20px;align-items:start}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.panel-title h2{margin:0;color:#123b58;font-size:1.2rem}.panel-title p{font-size:.83rem;margin-bottom:0}.product-list{display:grid;gap:9px;max-height:78vh;overflow:auto}.product-item{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;padding:9px;border:1px solid #e1ebf0;border-radius:12px;cursor:pointer}.product-item:hover,.product-item.selected{border-color:#32a9bc;background:#f4fbfc}.product-item img{width:58px;height:52px;object-fit:cover;border-radius:8px;background:#eaf2f6}.product-item strong,.product-item small{display:block}.product-item small{color:#708492;margin-top:4px}.status-pill{font-size:.7rem;background:#e8f5ef;color:#22784d;padding:5px 8px;border-radius:999px;white-space:nowrap}.status-pill.off{background:#f0f1f2;color:#687780}.editor-panel form{display:grid;gap:3px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.toggle{align-self:center;flex-direction:row;align-items:center;margin-top:28px}.toggle input{width:18px;height:18px;accent-color:#087da4}.toggle span{font-size:.86rem}.form-row label{min-width:0}label small{font-weight:450;color:#718490}.image-status{font-size:.8rem;color:#667e8d;margin:-4px 0 6px}.preview{display:grid;grid-template-columns:116px 1fr;gap:14px;align-items:center;background:#f4f8fa;border-radius:12px;padding:12px;margin:5px 0 12px}.preview img{width:116px;height:94px;object-fit:cover;border-radius:9px;background:#e7eef1}.preview strong,.preview span{display:block}.preview span{color:#087b9d;font-weight:750;margin:5px 0}.preview p{font-size:.85rem;color:#627887;margin:0}.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.notice{min-height:0;color:#196c4c;margin-bottom:12px}.notice:empty{display:none}.notice.error{color:#a4342c}.notice.success{padding:11px;background:#e8f7ef;border-radius:9px}footer{color:#718490;text-align:center;font-size:.82rem;padding:30px 0}.empty{color:#718490;padding:24px;text-align:center}@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.product-list{max-height:350px}.dashboard-head{align-items:flex-start}.admin-shell{margin:22px auto}}@media(max-width:560px){.admin-top{height:64px;padding:0 14px}.admin-brand img{width:140px}.admin-brand{gap:10px;font-size:.8rem}.admin-brand span{padding-left:10px}.admin-shell{padding:0 12px}.panel{padding:17px;border-radius:14px}.dashboard-head{gap:12px}.dashboard-head .secondary{padding:9px 10px;font-size:.82rem}.form-row{grid-template-columns:1fr;gap:0}.toggle{margin:5px 0}.preview{grid-template-columns:82px 1fr}.preview img{width:82px;height:82px}.form-actions button{flex:1}.product-item{grid-template-columns:48px 1fr auto;gap:8px}.product-item img{width:48px;height:46px}}
.image-tools{display:flex;align-items:center;justify-content:space-between;gap:12px}.remove-photo{background:transparent;color:#a4342c;padding:4px 0;font-size:.8rem;text-decoration:underline}
.admin-tabs{display:flex;gap:8px;overflow:auto;padding:8px 2px 16px;margin-top:10px}.admin-tab{background:#eaf2f6;color:#24536b;white-space:nowrap}.admin-tab.selected{background:#087da4;color:#fff}.content-stage{display:grid;gap:18px}.content-stage[hidden]{display:none}.content-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.content-preview{display:grid;grid-template-columns:minmax(140px,260px) 1fr;gap:18px;align-items:center;background:#f1f8fa;border-radius:14px;padding:14px;margin-top:16px}.content-preview img{width:100%;height:150px;object-fit:cover;border-radius:10px}.content-preview strong{font-size:1.2rem;color:#123b58}.content-item{border:1px solid #dce7ed;padding:16px;border-radius:14px;margin:10px 0}.content-item-head{display:flex;justify-content:space-between;align-items:center;color:#123b58}.content-item-head button{padding:6px 10px}.content-item-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,220px) auto;gap:16px;align-items:start}.content-item-image{width:100%;height:150px;object-fit:cover;border-radius:10px;background:#eaf2f6;margin-top:18px}.content-item .toggle{margin-top:4px}.content-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.content-actions[hidden]{display:none}.content-actions button{min-height:44px}
@media(max-width:600px){.admin-tabs{margin-right:-12px}.content-form-grid,.content-item-grid{grid-template-columns:1fr}.content-item-image{max-width:100%;height:180px;margin-top:0}.content-actions{position:sticky;bottom:8px;background:#f2f7faeF;padding:8px;border-radius:12px;z-index:2}.content-actions button{flex:1}.content-preview{grid-template-columns:1fr}.content-preview img{height:180px}}.site-preview-dialog{width:min(980px,calc(100% - 24px));max-height:90vh;overflow:auto;border:1px solid #dce7ed;border-radius:18px;padding:22px;color:#18374b}.site-preview-dialog::backdrop{background:#073557a8}.preview-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.preview-dialog-head h2{margin:6px 0 16px;color:#123b58}.preview-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;align-items:center;background:#edf7fa;border-radius:14px;padding:14px}.preview-hero>img{width:100%;height:240px;object-fit:cover;border-radius:10px}.preview-logo{width:160px;max-height:60px;object-fit:contain}.preview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.preview-cards article{border:1px solid #dce7ed;border-radius:12px;padding:10px}.preview-cards img{width:100%;height:130px;object-fit:cover;border-radius:8px}.preview-cards h3{margin:8px 0 4px}.preview-cards p,.preview-warning{font-size:.82rem;color:#637989}.site-preview-dialog section{margin:18px 0}.preview-warning{border-top:1px solid #e1ebf0;padding-top:12px}@media(max-width:600px){.site-preview-dialog{padding:14px}.preview-hero{grid-template-columns:1fr}.preview-hero>img{height:180px}.preview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-dialog-head{align-items:flex-start}}
.catalog-stage-intro{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;background:linear-gradient(125deg,#fff,#eef8fa);border:1px solid #dce7ed;border-radius:18px}.catalog-stage-intro h2{margin:8px 0;color:#123b58}.catalog-stage-intro p{color:#637989;max-width:660px}.catalog-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.catalog-record-list{display:grid;gap:8px;max-height:360px;overflow:auto;margin-bottom:14px}.catalog-record{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e1ebf0;border-radius:11px;padding:10px}.catalog-record button{background:#edf5f7;color:#24536b;text-align:left;flex:1}.catalog-record small{display:block;color:#708492;margin-top:3px}.catalog-record .danger{flex:0 0 auto}.catalog-editor-form{border-top:1px solid #e2ebef;padding-top:14px;display:grid;gap:2px}.catalog-editor-form h3{color:#123b58;margin:4px 0 10px}.catalog-editor-form label small{line-height:1.45}.catalog-media-list{display:grid;gap:8px}.catalog-media-row{display:grid;grid-template-columns:72px 1fr auto;gap:10px;align-items:center;padding:8px;border:1px solid #e1ebf0;border-radius:10px}.catalog-media-row img{width:72px;height:60px;object-fit:cover;border-radius:7px;background:#eef5f7}.catalog-media-row label{margin:0}.catalog-media-row select{padding:7px}.catalog-notice{margin-top:12px;color:#196c4c}.catalog-notice.error{color:#a4342c}.catalog-category-list{max-height:300px}.catalog-stage[hidden]{display:none}@media(max-width:900px){.catalog-admin-grid{grid-template-columns:1fr}.catalog-stage-intro{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.catalog-stage-intro{padding:16px}.catalog-media-row{grid-template-columns:56px 1fr}.catalog-media-row img{width:56px;height:56px}.catalog-media-row .media-actions{grid-column:1/-1;display:flex;gap:8px}.catalog-record{align-items:flex-start}}

.catalog-media-library{border:1px solid #dce7ed;border-radius:10px;padding:10px 12px}.catalog-media-library summary{cursor:pointer;color:#24536b;font-weight:750;padding:4px 0 8px}.catalog-media-library>small{display:block;color:#708492;margin-top:8px}
body.admin-embed{background:#f2f5f4}body.admin-embed .admin-top,body.admin-embed>footer{display:none}body.admin-embed .admin-shell{width:min(1380px,100%);margin:0 auto;padding:14px 16px}body.admin-embed .dashboard-head{padding-top:0}body.admin-embed .catalog-stage-intro{margin-top:0}@media(max-width:600px){body.admin-embed .admin-shell{padding:9px 8px}body.admin-embed .dashboard-head{align-items:flex-start;gap:8px}body.admin-embed .dashboard-head h1{font-size:22px}}

.admin-top{height:88px}.admin-brand img[src$="logo-mario-mora.svg"]{width:150px;height:78px;object-fit:contain}
@media(max-width:560px){.admin-top{height:78px;padding-inline:12px}.admin-brand{gap:8px}.admin-brand img[src$="logo-mario-mora.svg"]{width:116px;height:60px}.admin-brand span{padding-left:8px}}

#content-save-status{margin-right:auto;max-width:52ch;color:#19724d;font-size:12px;line-height:1.4}#content-save-status.error{color:#a4342c}#content-save-status:empty{display:none}@media(max-width:600px){#content-save-status{flex:1 0 100%}}
/* Acciones de guardado siempre accesibles al recorrer listas largas. */
.content-actions{position:sticky;top:8px;z-index:30;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin:0 0 12px;padding:9px 10px;border:1px solid rgba(63,116,122,.45);border-radius:12px;background:rgba(8,29,33,.96);box-shadow:0 8px 24px rgba(0,0,0,.2);backdrop-filter:blur(12px)}
.content-actions[hidden]{display:none}
@media(max-width:600px){.content-actions{top:4px;bottom:auto;gap:7px;padding:7px}.content-actions button{min-height:42px}.content-actions #content-save-status{flex:1 0 100%}}
.content-item-head-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.content-item-grid[hidden],.gallery-project-summary[hidden]{display:none!important}.gallery-project-summary{display:flex;align-items:center;gap:14px;padding:14px 2px 2px;border-top:1px solid var(--admin-line,#dce7ed);margin-top:12px}.gallery-project-summary img{width:104px;height:76px;flex:0 0 auto;object-fit:cover;border-radius:9px;background:#eaf2f6}.gallery-project-summary-copy{min-width:0}.gallery-project-summary-copy strong{display:block;overflow-wrap:anywhere}.gallery-project-summary-copy p{margin:4px 0;color:var(--admin-muted,#718291);font-size:12px}.gallery-project-status{display:inline-block;font-size:11px;font-weight:750;color:#07846f}@media(max-width:600px){.gallery-project-summary img{width:86px;height:68px}.content-item-head-actions{gap:4px}}
.construction-quick-panel{margin:18px 0;padding:22px;border:1px solid #31565b;border-radius:16px;background:linear-gradient(145deg,#102a2e,#0b2024);box-shadow:0 14px 34px #00121538}.construction-quick-panel[hidden]{display:none}.construction-quick-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.construction-quick-heading h2{margin:5px 0;font:600 clamp(23px,2.4vw,32px) Georgia,serif;color:#f0d2af}.construction-quick-heading p,.construction-import-help{max-width:720px;margin:0;color:#b8cbc6;line-height:1.55}.construction-quick-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.construction-import-help{margin:10px 0 16px;font-size:13px}.construction-admin-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.construction-admin-card{min-width:0;display:grid;grid-template-columns:minmax(110px,22%) minmax(0,1fr);overflow:hidden;border:1px solid #2b4b50;border-radius:13px;background:#0a1e22}.construction-admin-card-image{min-height:156px;background:linear-gradient(145deg,#173b3e,#a3784f);display:grid;place-items:center;color:#d9c2a7;text-align:center;font-size:12px}.construction-admin-card-image img{width:100%;height:100%;min-height:156px;object-fit:cover}.construction-admin-card-body{min-width:0;padding:14px}.construction-admin-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.construction-admin-card-title h3{margin:0;color:#f1d6b5;font:600 19px Georgia,serif}.construction-admin-card-title p{margin:6px 0 10px;color:#adc3bf;font-size:13px;line-height:1.45}.construction-admin-state{flex:none;padding:5px 8px;border:1px solid #735c43;border-radius:999px;color:#dfb782;font-size:11px}.construction-admin-state.is-visible{border-color:#167c64;color:#88e0b8}.construction-admin-card-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#b8cbc6;font-size:12px}.construction-admin-card-footer>div{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.construction-admin-card-footer button{padding:8px 10px;font-size:12px}.construction-admin-projects{display:grid;gap:6px;margin-top:11px}.construction-admin-projects button{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px 10px;border:1px solid #29484c;border-radius:8px;background:#10292d;color:#e3eeea;text-align:left}.construction-admin-projects button small{color:#d9ad7e}.construction-admin-empty{display:grid;gap:6px;padding:24px;border:1px dashed #567276;border-radius:12px;color:#b8cbc6}.construction-admin-empty strong{color:#f1d6b5;font-size:16px}
@media(max-width:900px){.construction-quick-heading{align-items:flex-start;flex-direction:column}.construction-quick-actions{justify-content:flex-start}.construction-admin-cards{grid-template-columns:1fr}}
@media(max-width:540px){.construction-quick-panel{padding:15px}.construction-quick-actions{width:100%}.construction-quick-actions button{flex:1 1 100%}.construction-admin-card{grid-template-columns:92px minmax(0,1fr)}.construction-admin-card-image,.construction-admin-card-image img{min-height:126px}.construction-admin-card-body{padding:10px}.construction-admin-card-title{flex-direction:column}.construction-admin-card-title h3{font-size:16px}.construction-admin-card-footer{align-items:flex-start;flex-direction:column}.construction-admin-card-footer>div{width:100%;justify-content:stretch}.construction-admin-card-footer button{flex:1}}

/* Construction editor: show one clear task at a time. */
#catalog-stage.construction-focus>.catalog-stage-intro{display:none}
#catalog-stage.construction-focus>.catalog-admin-grid{display:none}
#catalog-stage.construction-focus[data-construction-editor="category"]>.catalog-admin-grid,
#catalog-stage.construction-focus[data-construction-editor="project"]>.catalog-admin-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px}
#catalog-stage.construction-focus[data-construction-editor="category"]>.catalog-admin-grid>section:nth-child(2),
#catalog-stage.construction-focus[data-construction-editor="project"]>.catalog-admin-grid>section:nth-child(1){display:none}
#catalog-stage.construction-focus[data-construction-editor="category"] .catalog-admin-grid .panel-title,
#catalog-stage.construction-focus[data-construction-editor="category"] .catalog-admin-grid .catalog-record-list,
#catalog-stage.construction-focus[data-construction-editor="category"] .catalog-admin-grid .pool-color-admin,
#catalog-stage.construction-focus[data-construction-editor="project"] .catalog-admin-grid .panel-title,
#catalog-stage.construction-focus[data-construction-editor="project"] .catalog-admin-grid .catalog-record-list{display:none}
#catalog-stage.construction-focus[data-construction-editor="category"] .catalog-admin-grid>section:first-child,
#catalog-stage.construction-focus[data-construction-editor="project"] .catalog-admin-grid>section:nth-child(2){padding:18px;border-color:#365a5f;background:linear-gradient(145deg,#102a2e,#0b2024)}
#catalog-stage.construction-focus[data-construction-editor="category"] #catalog-category-form,
#catalog-stage.construction-focus[data-construction-editor="project"] #catalog-item-form{border:0;padding:0}
#catalog-stage.construction-focus .construction-quick-panel{margin-bottom:10px}
#catalog-stage.construction-focus .construction-quick-heading{align-items:center;margin:0}
#catalog-stage.construction-focus .construction-quick-heading h2{font-size:clamp(22px,2vw,28px)}
#catalog-stage.construction-focus .construction-admin-projects{margin-top:12px;border-top:1px solid #29484c;padding-top:9px}
#catalog-stage.construction-focus .construction-admin-projects summary{cursor:pointer;color:#d8b184;font-size:13px;font-weight:800;list-style:none}
#catalog-stage.construction-focus .construction-admin-projects summary::-webkit-details-marker{display:none}
#catalog-stage.construction-focus .construction-admin-projects summary::before{content:"＋ ";color:#39c9c4}
#catalog-stage.construction-focus .construction-admin-projects[open] summary::before{content:"− "}
#catalog-stage.construction-focus .construction-admin-projects>div{display:grid;gap:6px;margin-top:9px}
#catalog-stage.construction-focus .construction-admin-projects button{min-height:42px}
#catalog-stage.construction-focus .construction-admin-card{grid-template-columns:minmax(100px,17%) minmax(0,1fr)}
#catalog-stage.construction-focus .construction-admin-card-image,#catalog-stage.construction-focus .construction-admin-card-image img{min-height:130px}
@media(max-width:680px){#catalog-stage.construction-focus .construction-quick-heading{align-items:stretch;flex-direction:column}#catalog-stage.construction-focus .construction-quick-actions{width:100%}#catalog-stage.construction-focus .construction-quick-actions button{flex:1 1 100%}#catalog-stage.construction-focus .construction-admin-card{grid-template-columns:86px minmax(0,1fr)}#catalog-stage.construction-focus .construction-admin-card-image,#catalog-stage.construction-focus .construction-admin-card-image img{min-height:110px}}
.catalog-category-image-preview:empty{display:none}.catalog-category-image-card{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #31565b;border-radius:11px;background:#0a1e22;color:#e6efeb}.catalog-category-image-card>img{width:136px;height:90px;object-fit:cover;border-radius:8px}.catalog-category-image-card>div{flex:1}.catalog-category-image-card strong,.catalog-category-image-card small{display:block}.catalog-category-image-card small{margin-top:4px;color:#d9ad7e}.catalog-category-image-card label{margin:10px 0 0}.catalog-category-image-card input[type=checkbox]{width:auto}
@media(max-width:540px){.catalog-category-image-card{align-items:flex-start;flex-direction:column}.catalog-category-image-card>img{width:100%;height:150px}}

.construction-archived-wrap{margin-top:16px;padding:12px 14px;border:1px solid #31565b;border-radius:12px;background:#091d21}.construction-archived-wrap>summary{color:#d9b382;font-weight:700;cursor:pointer}.construction-archived-cards{display:grid;gap:8px;margin-top:12px}.construction-archived-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #29484c;border-radius:9px;background:#10292d;color:#e3eeea}.construction-archived-row>div{display:grid;gap:4px}.construction-archived-row small{color:#adc3bf}.construction-archived-row button{flex:none}
@media(max-width:540px){.construction-archived-row{align-items:stretch;flex-direction:column}.construction-archived-row button{width:100%}}