#aniv-app {
  --aniv-bg:#fff;
  --aniv-bg-soft:#f3f6fa;
  --aniv-navy:#0f2a4a;
  --aniv-navy-mid:#1b4a7a;
  --aniv-navy-soft:#e6edf6;
  --aniv-ink:#16202b;
  --aniv-ink-soft:#5b6b7a;
  --aniv-border:#e1e6ec;
  --aniv-danger:#b23a3a;
  --aniv-danger-soft:#fbeaea;
  background:var(--aniv-bg);
  color:var(--aniv-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}

#aniv-app * { box-sizing:border-box; }
#aniv-app button { font-family:inherit;cursor:pointer; }
#aniv-app .aniv-wrap { max-width:680px;margin:0 auto;padding:32px 20px 80px; }
#aniv-app .aniv-header { display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;border-bottom:2px solid var(--aniv-navy);padding-bottom:16px; }
#aniv-app .aniv-brand { display:flex;align-items:center;gap:16px;min-width:0; }
#aniv-app .aniv-brand-logo { display:block;width:174px;max-width:38vw;height:auto;object-fit:contain; }
#aniv-app h1 { font-weight:600;font-size:24px;line-height:1.2;margin:0;color:var(--aniv-navy);letter-spacing:-.2px; }
#aniv-app .aniv-sub { color:var(--aniv-ink-soft);font-size:13px;margin-top:4px; }
#aniv-app #aniv-addBtn { background:var(--aniv-navy);color:#fff;border:0;border-radius:6px;padding:10px 18px;font-size:14px;font-weight:600;white-space:nowrap; }
#aniv-app #aniv-addBtn:hover { background:var(--aniv-navy-mid); }
#aniv-app #aniv-panel { background:var(--aniv-bg-soft);border:1px solid var(--aniv-border);border-radius:10px;padding:20px;margin-bottom:28px;display:none; }
#aniv-app #aniv-panel.open { display:block; }
#aniv-app #aniv-panel h2 { font-weight:600;font-size:17px;margin:0 0 16px;color:var(--aniv-navy); }
#aniv-app .aniv-type-toggle { display:flex;gap:8px;margin-bottom:16px; }
#aniv-app .aniv-type-btn { flex:1;border:1px solid var(--aniv-border);background:#fff;color:var(--aniv-ink-soft);padding:12px;border-radius:8px;font-size:13px;font-weight:600;text-align:center; }
#aniv-app .aniv-type-btn.active { border-color:var(--aniv-navy);background:var(--aniv-navy-soft);color:var(--aniv-navy); }
#aniv-app .aniv-row { display:flex;gap:12px;margin-bottom:12px; }
#aniv-app .aniv-field { flex:1;display:flex;flex-direction:column;gap:4px; }
#aniv-app .aniv-name-field { flex:2; }
#aniv-app #aniv-admissaoField { display:none; }
#aniv-app label { font-size:12px;color:var(--aniv-ink-soft); }
#aniv-app input,
#aniv-app select { width:100%;border:1px solid var(--aniv-border);border-radius:6px;padding:8px 10px;font-size:14px;background:#fff;color:var(--aniv-ink); }
#aniv-app input:focus,
#aniv-app select:focus { outline:2px solid var(--aniv-navy-mid);outline-offset:0; }
#aniv-app .aniv-checkbox-row { display:flex;align-items:center;gap:8px;margin-bottom:14px; }
#aniv-app .aniv-checkbox-row input { width:16px;height:16px; }
#aniv-app .aniv-checkbox-row label { font-size:13px;color:var(--aniv-ink); }
#aniv-app .aniv-err { color:var(--aniv-danger);font-size:12px;margin-top:4px;display:none; }
#aniv-app .aniv-panel-actions { display:flex;gap:10px;justify-content:flex-end;margin-top:6px; }
#aniv-app .aniv-btn-secondary { background:transparent;border:1px solid var(--aniv-border);border-radius:6px;padding:8px 16px;font-size:13px;color:var(--aniv-ink-soft); }
#aniv-app .aniv-btn-primary { background:var(--aniv-navy);color:#fff;border:0;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600; }
#aniv-app .aniv-filters { display:flex;gap:8px;margin-bottom:24px; }
#aniv-app .aniv-chip { border:1px solid var(--aniv-border);background:transparent;color:var(--aniv-ink-soft);padding:6px 16px;border-radius:20px;font-size:13px; }
#aniv-app .aniv-chip.active { background:var(--aniv-navy);color:#fff;border-color:var(--aniv-navy); }
#aniv-app .aniv-next-card { background:var(--aniv-navy);color:#fff;border-radius:10px;padding:22px 24px;margin-bottom:32px; }
#aniv-app .aniv-next-label { font-size:11px;letter-spacing:.3px;opacity:.75;margin:0 0 8px; }
#aniv-app .aniv-next-top { display:flex;align-items:baseline;justify-content:space-between;gap:12px; }
#aniv-app .aniv-next-name { font-size:26px;font-weight:600;line-height:1.2; }
#aniv-app .aniv-next-days-badge { flex:0 0 auto;font-size:12px;font-weight:600;background:rgba(255,255,255,.15);padding:5px 12px;border-radius:20px;white-space:nowrap; }
#aniv-app .aniv-next-meta { font-size:14px;opacity:.85;margin-top:6px;text-transform:capitalize; }
#aniv-app .aniv-section-label { font-size:12px;letter-spacing:.3px;color:var(--aniv-ink-soft);margin:0 0 10px; }
#aniv-app .aniv-item { display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--aniv-border);font-size:14px; }
#aniv-app .aniv-date { width:52px;color:var(--aniv-ink-soft);text-align:center; }
#aniv-app .aniv-date .aniv-weekday { display:block;font-size:11px;line-height:1.2;text-transform:capitalize;color:var(--aniv-ink-soft); }
#aniv-app .aniv-date .aniv-day-month { display:block;font-size:13px;line-height:1.35;font-variant-numeric:tabular-nums;color:var(--aniv-ink);font-weight:600; }
#aniv-app .aniv-name { flex:1; }
#aniv-app .aniv-item-actions { display:flex;gap:6px; }
#aniv-app .aniv-edit-btn,
#aniv-app .aniv-delete-btn { background:none;border:1px solid var(--aniv-border);font-size:12px;padding:5px 10px;border-radius:6px; }
#aniv-app .aniv-edit-btn { color:var(--aniv-navy); }
#aniv-app .aniv-edit-btn:hover { background:var(--aniv-navy-soft);border-color:var(--aniv-navy-soft); }
#aniv-app .aniv-delete-btn { color:var(--aniv-ink-soft); }
#aniv-app .aniv-delete-btn:hover { background:var(--aniv-danger-soft);color:var(--aniv-danger);border-color:var(--aniv-danger-soft); }
#aniv-app .aniv-tag { display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px;background:var(--aniv-navy-soft);color:var(--aniv-navy);margin-left:6px; }
#aniv-app .aniv-tag.rep { background:var(--aniv-navy);color:#fff; }
#aniv-app .aniv-empty,
#aniv-app .aniv-loading { text-align:center;padding:60px 20px;color:var(--aniv-ink-soft); }
#aniv-app .aniv-empty p { margin:6px 0; }
#aniv-app .aniv-feedback { display:none;margin:-10px 0 20px;padding:10px 12px;border-radius:6px;font-size:13px; }
#aniv-app .aniv-feedback.success { display:block;background:#e8f5ec;color:#246b3d; }
#aniv-app .aniv-feedback.error { display:block;background:var(--aniv-danger-soft);color:var(--aniv-danger); }

@media (max-width:560px) {
  #aniv-app .aniv-wrap { padding:22px 14px 56px; }
  #aniv-app .aniv-header { align-items:flex-start;gap:14px; }
  #aniv-app .aniv-brand { align-items:flex-start;flex-direction:column;gap:10px; }
  #aniv-app .aniv-brand-logo { width:150px;max-width:55vw; }
  #aniv-app .aniv-row { flex-direction:column; }
  #aniv-app .aniv-filters { overflow-x:auto;padding-bottom:2px; }
  #aniv-app .aniv-chip { white-space:nowrap; }
  #aniv-app .aniv-next-card { padding:18px; }
  #aniv-app .aniv-next-top { align-items:flex-start;flex-wrap:wrap; }
  #aniv-app .aniv-next-name { font-size:23px; }
  #aniv-app .aniv-item { align-items:flex-start;flex-wrap:wrap; }
  #aniv-app .aniv-name { min-width:calc(100% - 64px); }
  #aniv-app .aniv-item-actions { width:100%;justify-content:flex-end; }
}
