.admin-card{background:#fff; border-radius:12px; padding:28px; box-shadow:0 1px 4px rgba(31,36,48,.08); max-width:420px; margin:0 auto;}
.admin-card h1{font-size:20px; margin-bottom:6px;}
.admin-card .sub{color:var(--grey-600); font-size:13px; margin-bottom:20px;}
.field{display:flex; flex-direction:column; gap:5px; margin-bottom:14px;}
.field label{font-size:12.5px; font-weight:700; color:var(--grey-600);}
.field input, .field select{
  font-family:var(--font-body); font-size:14px; padding:10px 12px; border-radius:8px; border:1px solid var(--grey-200);
  background:#fff; color:var(--grey-900); width:100%;
}
.field input:focus, .field select:focus{outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent);}
.text-danger{color:var(--flag-red); font-size:12px; display:block; margin-top:2px;}
.btn-primary{
  background:var(--navy-700); color:#fff; font-family:var(--font-head); font-weight:700; font-size:15px;
  border:none; border-radius:10px; padding:12px 28px; cursor:pointer; width:100%;
}
.btn-primary:hover{background:var(--navy-900);}
.alert-error{background:#FBE2E4; color:#7A1F27; padding:12px 16px; border-radius:8px; margin-bottom:16px; font-size:13.5px;}

.field .req{color:var(--flag-red);}
.combo-field{position:relative;}
.suggest-list{
  position:absolute; z-index:10; top:100%; left:0; right:0; background:#fff; border:1px solid var(--grey-200);
  border-radius:8px; margin-top:4px; max-height:220px; overflow-y:auto; box-shadow:0 6px 18px rgba(31,36,48,.15);
  padding:4px; list-style:none;
}
.suggest-list li{padding:8px 10px; border-radius:6px; cursor:pointer; font-size:13.5px;}
.suggest-list li:hover{background:var(--navy-100);}
.suggest-list li small{display:block; color:var(--grey-600); font-size:11.5px;}
.field-error:not([hidden]){color:var(--flag-red); font-size:12px; display:block; margin-top:4px;}
.form-row-2{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
.form-row-time{display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px;}
.btn-secondary{
  background:var(--navy-100); color:var(--navy-700); font-family:var(--font-head); font-weight:700; font-size:14px;
  border:none; border-radius:8px; padding:10px 18px; cursor:pointer;
}
.btn-secondary:hover{background:#DFD9F0;}
.btn-link{background:none; border:none; color:var(--accent); font-size:13px; cursor:pointer; text-decoration:underline; padding:0;}
.header-summary:not([hidden]){display:flex; align-items:center; justify-content:space-between; gap:14px; background:var(--navy-100); border-radius:10px; padding:12px 16px; margin-bottom:20px; font-size:13.5px; color:var(--navy-900);}
.entry-table{width:100%; border-collapse:collapse; margin-bottom:6px;}
.entry-table th{background:var(--navy-700); color:#fff; text-align:left; padding:8px 10px; font-size:12px; font-family:var(--font-head);}
.entry-table td{padding:8px 10px; font-size:13px; border-bottom:1px solid var(--grey-200);}
.entry-table td.actions{text-align:right; white-space:normal;}
.entry-table .row-btn{background:none; border:1px solid var(--grey-200); border-radius:6px; padding:4px 7px; font-size:11px; cursor:pointer; margin:2px 0 2px 4px; color:var(--grey-900); white-space:nowrap;}
.entry-table .row-btn:hover{background:var(--grey-100);}
.entry-table .row-btn.danger{color:var(--flag-red); border-color:#F3C9CC;}
.empty-note{color:var(--grey-600); font-size:13px; margin:0 0 14px;}
.row-form{background:var(--grey-100); border-radius:10px; padding:20px; margin-top:16px;}
.row-form h3{font-size:15px; margin-bottom:14px;}
.row-form-actions{display:flex; align-items:center; gap:14px; margin-top:6px;}
.finish-row{display:flex; align-items:center; gap:14px; margin-top:24px; padding-top:20px; border-top:1px solid var(--grey-200);}
#terminaMsg{font-size:13px; color:var(--grey-600);}
#terminaMsg.ok{color:var(--flag-green); font-weight:700;}
#terminaMsg.error{color:var(--flag-red); font-weight:700;}
