/*
  Appointaro (Dashboard)
  Objetivo: visual mais "clean" e coerente, com botÃµes consistentes e bom responsive.
  Escopo: sÃ³ dentro de .ap-manager
*/

.ap-manager, .ap-manager * { box-sizing: border-box; }

.ap-manager{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#0f172a;
  max-width:1100px;
  margin:0 auto;
  padding:18px 14px;
}

.ap-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:900px){.ap-grid-2{grid-template-columns:1fr}}

/* Cards */
.ap-box,.ap-cat{
  border:1px solid rgba(15,23,42,.10);
  border-radius:18px;
  padding:16px;
  background:#fff;
  box-shadow:0 10px 25px rgba(15,23,42,.06);
}
.ap-cat{margin-top:16px}

/* Inputs */
.ap-box input,.ap-box select,.ap-box textarea,
.ap-row input,.ap-row select,
.ap-item textarea{
  width:100%;
  padding:11px 12px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:12px;
  margin-top:8px;
  font-size:14px;
  background:#fff;
}

.ap-box input:focus,.ap-box select:focus,.ap-box textarea:focus,
.ap-row input:focus,.ap-row select:focus,
.ap-item textarea:focus{
  outline:none;
  border-color:rgba(15,23,42,.35);
  box-shadow:0 0 0 4px rgba(15,23,42,.08);
}

/* BotÃµes */
.ap-box button,
.ap-btn{
  appearance:none;
  border:1px solid rgba(15,23,42,.16);
  border-radius:12px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
  padding:10px 14px;
  font-weight:700;
  line-height:1;
}

.ap-box button{
  margin-top:10px;
  background:#0f172a;
  color:#fff;
  border-color:#0f172a;
}

.ap-btn:hover,.ap-box button:hover{transform:translateY(-1px)}
.ap-btn:active,.ap-box button:active{transform:translateY(0)}

/* BotÃµes pequenos (setas) */
.ap-actions .ap-btn{padding:10px 12px;min-width:44px;height:40px}

.ap-danger{background:#0f172a;color:#fff;border-color:#0f172a}

.ap-badge{
  margin-left:8px;
  font-size:12px;
  padding:4px 10px;
  border:1px solid rgba(15,23,42,.16);
  border-radius:999px;
}

.ap-cat-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.ap-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

/* Lista de itens */
.ap-items{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.ap-item{
  display:flex;
  gap:12px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:18px;
  padding:14px;
  background:#fff;
  align-items:flex-start;
  box-shadow:0 10px 25px rgba(15,23,42,.04);
}
.ap-item-left{width:140px}
.ap-thumb{width:120px;height:80px;object-fit:cover;border-radius:14px;border:1px solid rgba(15,23,42,.14);display:block}
.ap-thumb--empty{background:#f3f4f6}
.ap-item-left input[type=file]{margin-top:8px;width:120px}

.ap-item-main{flex:1;min-width:0}
.ap-row{display:flex;gap:10px;flex-wrap:wrap}
.ap-row input,.ap-row select{flex:1;min-width:200px;margin-top:0}

.ap-muted{opacity:.75;margin-top:8px;font-size:13px}

@media(max-width:600px){
  .ap-manager{padding:14px 10px}
  .ap-item{flex-direction:column}
  .ap-item-left{width:auto;display:flex;gap:12px;align-items:flex-start}
  .ap-item-left input[type=file]{width:auto}
  .ap-thumb{width:100%;height:180px}
  .ap-actions .ap-btn{flex:1;min-width:0}
}