/* ECO · pantalla de aportar compacta y consistente con la portada */
#appContent{max-width:100%;gap:0!important}
#appContent #main-content{width:min(100%,710px);margin:0 auto}
#appContent .topbar{margin-bottom:8px}
#appContent header{margin:0 auto 14px!important;max-width:710px!important}
#appContent header h1{font-size:clamp(1.65rem,4vw,2.3rem);line-height:1.1;color:#293d30}
#appContent header .owner-name{font-size:clamp(1.4rem,3.5vw,2.15rem);margin:3px 0!important;line-height:1.18}
#appContent header .sub{font-size:.95rem}
/* Barra de acciones horizontal encima del panel */
#appContent .eco-colab-barra{display:flex;flex-wrap:wrap;gap:8px;width:min(100%,710px);margin:0 auto 14px}
#appContent .eco-colab-barra>.eco-colab-personas,
#appContent .eco-colab-barra>.eco-colab-historial{flex:1 1 auto;min-width:0;margin:0;background:#fffdf6;border:1px solid #dadaca;border-radius:12px}
#appContent .eco-colab-barra>details[open]{flex:1 1 100%}
#appContent .eco-colab-personas>summary,#appContent .eco-colab-historial>summary{list-style:none;cursor:pointer;min-height:42px;padding:9px 14px;display:flex;align-items:center;gap:6px;font-weight:700;color:#293d30;font-size:.92rem;white-space:nowrap}
#appContent .eco-colab-personas>summary::-webkit-details-marker,#appContent .eco-colab-historial>summary::-webkit-details-marker{display:none}
#appContent .eco-colab-personas>summary::before,#appContent .eco-colab-historial>summary::before{content:"⌄";color:#4d6542;font-size:1.1rem;flex-shrink:0}
#appContent .eco-colab-personas[open]>summary::before,#appContent .eco-colab-historial[open]>summary::before{content:"⌃"}
#appContent .eco-colab-personas .eco-colab-actual{font-weight:400;color:#4d6542;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#appContent .eco-colab-personas #collabSwitch{margin:0 auto 12px!important;padding:0 12px;max-width:100%}
#appContent .eco-colab-personas #collabSwitch .sub{display:none}
#appContent .eco-colab-personas .collab-switch-list{gap:6px;justify-content:center}
#appContent .eco-colab-personas .collab-switch-list a{font-size:.88rem;padding:7px 12px}
#appContent .eco-colab-personas #collabSwitch p a{color:#4d6542;font-weight:700;text-underline-offset:3px}
#appContent .eco-colab-barra>.eco-colab-codigo{display:flex;align-items:center;margin:0;padding:0 4px}
#appContent .eco-colab-barra>.eco-colab-codigo a{color:#4d6542;font-weight:700;font-size:.88rem;text-underline-offset:3px;white-space:nowrap}
/* Dialog "Tengo un código" */
dialog.eco-codigo-dlg{border:none;border-radius:18px;padding:28px 24px 24px;max-width:min(380px,calc(100vw - 32px));width:100%;background:#fffdf6;box-shadow:0 8px 40px rgba(41,61,48,.18);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0}
dialog.eco-codigo-dlg::backdrop{background:rgba(41,61,48,.35);backdrop-filter:blur(2px)}
dialog.eco-codigo-dlg h2{font-family:"Source Serif 4",Georgia,serif;font-size:1.25rem;color:#293d30;margin:0 0 18px;padding-right:28px}
dialog.eco-codigo-dlg label{display:block;font-size:.85rem;color:#777568;margin:0 0 6px}
dialog.eco-codigo-dlg input{width:100%;box-sizing:border-box;border:1px solid #dadaca;border-radius:10px;padding:10px 13px;font-family:"Atkinson Hyperlegible","Segoe UI",Arial,sans-serif;font-size:1.1rem;letter-spacing:.08em;background:#fff;color:#302d25;min-height:44px;text-transform:uppercase}
dialog.eco-codigo-dlg input:focus{outline:3px solid #293d30;outline-offset:2px;border-color:transparent}
dialog.eco-codigo-dlg .eco-dlg-error{margin:6px 0 0;font-size:.85rem;color:#b03a2e;min-height:1.2em}
dialog.eco-codigo-dlg .eco-dlg-submit{display:block;width:100%;margin-top:14px;border:none;background:#293d30;color:#fbf6ea;border-radius:10px;min-height:46px;font-weight:700;font-size:1rem;cursor:pointer;transition:background .15s}
dialog.eco-codigo-dlg .eco-dlg-submit:hover{background:#3a5040}
dialog.eco-codigo-dlg .eco-dlg-submit:disabled{opacity:.6;cursor:default}
dialog.eco-codigo-dlg .eco-dlg-close{position:absolute;top:12px;right:14px;border:none;background:none;font-size:1.4rem;color:#777568;cursor:pointer;line-height:1;padding:4px 6px;border-radius:6px}
dialog.eco-codigo-dlg .eco-dlg-close:hover{color:#293d30}
#appContent .aportes{width:100%!important;max-width:710px!important;padding:clamp(17px,3vw,25px)!important;gap:10px!important;margin-bottom:16px!important;min-height:0!important}
#appContent .aportes>h2{text-align:center;font-size:1.4rem;margin-bottom:0}
#appContent .orb-zone{padding:10px 0 0!important;gap:8px!important;min-height:0!important}
#appContent .orb-zone .orb{--eco-orb-size:clamp(165px,min(45vw,29dvh),250px)}
#appContent .orb-zone .state-label:empty,#appContent .aportes .msg:empty,#appContent #fotoSeleccionadaNombre:empty{display:none!important;min-height:0!important}
#appContent .eco-colab-adjuntos{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:7px 0 0;width:100%}
#appContent .eco-colab-adjuntos .write-toggle{font-size:.85rem!important;min-height:44px!important;padding:9px 12px!important;border:1px solid #dadaca!important;border-radius:12px!important;background:#f7f4eb!important;text-decoration:none!important;color:#4d6542!important;font-weight:700!important}
#appContent .aporte-chat{display:none!important}
#appContent .aporte-bubble{font-size:.94rem;max-width:90%}
#appContent .eco-colab-historial>summary{justify-content:flex-start;color:#4d6542}
#appContent .eco-colab-historial>.lista{padding:0 14px 14px}
#appContent .eco-colab-historial>hr{display:none}
#appContent .write-row{max-width:min(100%,400px)}
#appContent .write-row input{min-width:0}
@media(max-width:600px){
 body{padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))}
 #appContent header{margin-bottom:10px!important}
 #appContent .aportes{padding:16px 12px!important;border-radius:20px}
 #appContent .eco-colab-adjuntos{display:grid;grid-template-columns:1fr;max-width:340px}
 #appContent .eco-colab-adjuntos .write-toggle{width:100%;white-space:normal;line-height:1.3}
 #appContent .orb-zone .orb{--eco-orb-size:clamp(155px,45vw,205px)}
 #appContent .eco-colab-personas>summary,#appContent .eco-colab-historial>summary{font-size:.88rem;white-space:normal}
}

/* ECO: mismo patrón editorial de encabezado que Mi libro. Solo pantalla autenticada. */
#appContent {
  align-items: stretch;
}
#appContent #ownTopbar,
#appContent > header,
#appContent #main-content {
  width: min(100%, 1100px);
  max-width: 1100px;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
}
#appContent #ownTopbar {
  justify-content: flex-start;
  margin-top: 12px;
  margin-bottom: 14px;
}
#appContent > header {
  text-align: left;
  margin-top: 0;
  margin-bottom: 18px;
  padding-block: 0;
}
#appContent > header h1 {
  text-align: left;
  color: #302d25;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: clamp(33px, 4.5vw, 51px);
  letter-spacing: -.025em;
  line-height: 1.04;
  margin: 0 0 10px;
}
#appContent > header .owner-name {
  text-align: left;
  color: #4d6542;
  font-family: 'Source Serif 4', Georgia, serif;
  font-size: clamp(21px, 2.7vw, 30px);
  margin: 0 0 7px;
  line-height: 1.2;
}
#appContent > header .sub {
  text-align: left;
  color: #777568;
  font-size: clamp(15px, 1.3vw, 17px);
  line-height: 1.55;
}
#appContent #main-content { min-width:0; }
#appContent #collabSwitch {max-width: 710px;}
#appContent .aportes {max-width: 710px; width:100%;}
@media (max-width:650px) {
  #appContent #ownTopbar {margin-top: 0; margin-bottom:12px;}
  #appContent #ownTopbar a.volver {font-size:.9rem; padding:8px 13px;}
  #appContent > header h1 {font-size:clamp(32px, 8vw, 42px);}
  #appContent > header {margin-bottom: 15px;}
}
