/**
 * CEMI private administration surface
 * Generic structural adaptation only. Visual identity remains owned by the
 * existing portal and Home styles.
 */
body.cemi-private-runtime--admin{
  --cemi-private-page-max:1600px;
  --cemi-private-reading-max:1240px;
  --cemi-private-sidebar-min:280px;
  --cemi-private-sidebar-max:380px;
}

.cemi-surface-admin,
.cemi-surface-admin .cemi-portal-shell,
.cemi-surface-admin .cemi-portal-runtime__main,
.cemi-surface-admin .cemi-home-shell,
.cemi-surface-admin .cemi-portal-heading,
.cemi-surface-admin .cemi-portal-grid,
.cemi-surface-admin .cemi-portal-panel,
.cemi-surface-admin .cemi-home-section,
.cemi-surface-admin .cemi-home-search-panel,
.cemi-surface-admin .cemi-capture-admin-list,
.cemi-surface-admin .cemi-capture-row{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

/* Shared private shell: header may remain full width while content follows the
 * canonical private container contract. */
.cemi-surface-admin .cemi-home-shell,
.cemi-surface-admin .cemi-create-shell{
  width:min(var(--cemi-private-page-max),calc(100% - (var(--cemi-private-gutter-desktop) * 2)));
  max-width:var(--cemi-private-page-max);
  margin-inline:auto;
}

.cemi-surface-admin .cemi-portal-header{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

.cemi-surface-admin .cemi-portal-nav{
  min-width:0;
  flex-wrap:wrap;
}

/* Home */
.cemi-surface-admin .cemi-home-heading,
.cemi-surface-admin .cemi-home-section>header{
  min-width:0;
}

.cemi-surface-admin .cemi-home-actions,
.cemi-surface-admin .cemi-home-alerts,
.cemi-surface-admin .cemi-home-tools{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));
  gap:var(--cemi-private-card-gap);
  align-items:stretch;
}

.cemi-surface-admin .cemi-home-actions>* ,
.cemi-surface-admin .cemi-home-alerts>* ,
.cemi-surface-admin .cemi-home-tools>*{
  min-width:0;
  width:auto;
  max-width:100%;
  height:auto;
  box-sizing:border-box;
}

.cemi-surface-admin .cemi-home-search-panel,
.cemi-surface-admin .cemi-home-search-results{
  width:100%;
  min-width:0;
}

.cemi-surface-admin .cemi-home-search-filters,
.cemi-surface-admin .cemi-capture-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  min-width:0;
}

.cemi-surface-admin .cemi-home-team{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);
  gap:var(--cemi-private-section-gap);
  align-items:center;
}

/* Capture review queue */
.cemi-surface-admin .cemi-capture-admin-list{
  display:grid;
  gap:var(--cemi-private-card-gap);
}

.cemi-surface-admin .cemi-capture-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,auto);
  gap:var(--cemi-private-card-gap);
  align-items:start;
}

.cemi-surface-admin .cemi-capture-row>div,
.cemi-surface-admin .cemi-capture-row__actions,
.cemi-surface-admin .cemi-capture-note,
.cemi-surface-admin .cemi-capture-review-strip>*{
  min-width:0;
}

.cemi-surface-admin .cemi-capture-row__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
}

.cemi-surface-admin .cemi-capture-note,
.cemi-surface-admin .cemi-capture-row>[data-review-status]{
  grid-column:1/-1;
}

.cemi-surface-admin .cemi-capture-note textarea{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  resize:vertical;
  box-sizing:border-box;
}

.cemi-surface-admin .cemi-pagination{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:100%;
  min-width:0;
}

/* Generic administration modules and placeholder tools */
.cemi-surface-admin .cemi-portal-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
  gap:var(--cemi-private-card-gap);
}

.cemi-surface-admin .cemi-portal-profile{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
  gap:var(--cemi-private-card-gap);
}

.cemi-surface-admin .cemi-portal-form,
.cemi-surface-admin .cemi-home-market-form,
.cemi-surface-admin .cemi-create-grid{
  min-width:0;
}

.cemi-surface-admin .cemi-portal-form input,
.cemi-surface-admin .cemi-portal-form select,
.cemi-surface-admin .cemi-portal-form textarea,
.cemi-surface-admin .cemi-home-market-form input,
.cemi-surface-admin .cemi-home-market-form select,
.cemi-surface-admin .cemi-home-market-form textarea,
.cemi-surface-admin .cemi-create-panel input,
.cemi-surface-admin .cemi-create-panel select,
.cemi-surface-admin .cemi-create-panel textarea{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

.cemi-surface-admin .cemi-home-market-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
  gap:var(--cemi-private-card-gap);
}

/* Local overflow is allowed for naturally wide data, never on the document. */
.cemi-surface-admin .cemi-table-region,
.cemi-surface-admin .cemi-admin-table-wrap,
.cemi-surface-admin .cemi-portal-table-wrap,
.cemi-surface-admin .cemi-capture-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}

.cemi-surface-admin img,
.cemi-surface-admin svg,
.cemi-surface-admin canvas,
.cemi-surface-admin iframe{
  max-width:100%;
}

@media(max-width:1280px){
  .cemi-surface-admin .cemi-home-shell,
  .cemi-surface-admin .cemi-create-shell{
    width:calc(100% - (var(--cemi-private-gutter-tablet) * 2));
  }

  .cemi-surface-admin .cemi-capture-row{
    grid-template-columns:minmax(0,1fr) minmax(240px,34%);
  }
}

@media(max-width:960px){
  .cemi-surface-admin .cemi-home-team,
  .cemi-surface-admin .cemi-capture-row,
  .cemi-surface-admin .cemi-capture-review-strip{
    grid-template-columns:minmax(0,1fr);
  }

  .cemi-surface-admin .cemi-capture-row__actions{
    grid-column:1;
    justify-content:flex-start;
  }

  .cemi-surface-admin .cemi-home-team .cemi-home-actions{
    grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));
  }
}

@media(max-width:720px){
  .cemi-surface-admin .cemi-home-shell,
  .cemi-surface-admin .cemi-create-shell{
    width:100%;
    max-width:none;
    padding-inline:var(--cemi-private-gutter-mobile);
    box-sizing:border-box;
  }

  .cemi-surface-admin .cemi-portal-header,
  .cemi-surface-admin .cemi-home-heading,
  .cemi-surface-admin .cemi-home-section>header,
  .cemi-surface-admin .cemi-create-heading{
    align-items:stretch;
    flex-direction:column;
  }

  .cemi-surface-admin .cemi-portal-nav,
  .cemi-surface-admin .cemi-home-search-filters,
  .cemi-surface-admin .cemi-capture-filters,
  .cemi-surface-admin .cemi-capture-row__actions{
    width:100%;
  }

  .cemi-surface-admin .cemi-home-actions,
  .cemi-surface-admin .cemi-home-alerts,
  .cemi-surface-admin .cemi-home-tools,
  .cemi-surface-admin .cemi-home-market-grid,
  .cemi-surface-admin .cemi-portal-grid,
  .cemi-surface-admin .cemi-portal-profile{
    grid-template-columns:minmax(0,1fr);
  }

  .cemi-surface-admin .cemi-capture-row__actions>* ,
  .cemi-surface-admin .cemi-home-search-filters>* ,
  .cemi-surface-admin .cemi-capture-filters>*{
    flex:1 1 100%;
    max-width:100%;
    justify-content:center;
    text-align:center;
    box-sizing:border-box;
  }

  .cemi-surface-admin .cemi-pagination{
    flex-direction:column;
  }
}

/* Shared Add property capture surface */
.cemi-property-create--admin .cemi-create-route-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--cemi-private-card-gap);margin-bottom:16px}
.cemi-property-create--admin .cemi-create-route-picker button{display:grid;gap:6px;text-align:left;padding:18px;border:1px solid var(--cemi-private-border);border-radius:var(--cemi-private-radius-panel);background:var(--cemi-private-surface);color:inherit;cursor:pointer}
.cemi-property-create--admin .cemi-create-route-picker button.is-active{outline:2px solid currentColor;outline-offset:2px}
.cemi-property-create--admin .cemi-create-progress{display:grid;gap:8px;margin:0 0 16px}.cemi-property-create--admin .cemi-create-progress progress{width:100%}
@media (max-width:720px){.cemi-property-create--admin .cemi-create-route-picker{grid-template-columns:1fr}}
