/* INAT | Made by Humans — ASD Eventi. Tutte le regole sono isolate nel wrapper. */
.inat-asd-wrap {
  --inat-asd-ink: #172c38;
  --inat-asd-muted: #62717a;
  --inat-asd-accent: #135e78;
  --inat-asd-tint: #f4f8fa;
  --inat-asd-border: #dfe8ed;
  --inat-asd-radius: 14px;
  color: var(--inat-asd-ink);
  font: inherit;
  max-width: 1120px;
  margin: 0 auto 3rem;
  line-height: 1.55;
}
.inat-asd-wrap *, .inat-asd-wrap *::before, .inat-asd-wrap *::after { box-sizing: border-box; }
.inat-asd-wrap h2, .inat-asd-wrap h3 { color: var(--inat-asd-ink); line-height: 1.22; margin: 0; }
.inat-asd-wrap h2 { font-size: clamp(1.7rem, 3.5vw, 2.5rem); }
.inat-asd-wrap h3 { font-size: clamp(1.2rem, 2.2vw, 1.65rem); }
.inat-asd-wrap p { margin: .7rem 0 1.2rem; }
.inat-asd-wrap a { color: var(--inat-asd-accent); text-underline-offset: 3px; }
.inat-asd-eyebrow { display: block; font-size: .75rem; font-weight: 760; letter-spacing: .16em; text-transform: uppercase; color: var(--inat-asd-accent); margin-bottom: .65rem; }
.inat-asd-intro { max-width: 720px; margin-bottom: 2rem; }
.inat-asd-intro p, .inat-asd-dashboard-head p { color: var(--inat-asd-muted); }
.inat-asd-form { border: 1px solid var(--inat-asd-border); background: #fff; border-radius: var(--inat-asd-radius); padding: clamp(1rem, 3vw, 2rem); box-shadow: 0 13px 48px rgba(10,38,51,.045); }
.inat-asd-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem 1.5rem; }
.inat-asd-full { grid-column: 1 / -1; }
.inat-asd-wrap label:not(.inat-asd-check) { display: flex; flex-direction: column; gap: .4rem; font-weight: 650; font-size: .93rem; }
.inat-asd-wrap input:not([type="checkbox"]):not([type="hidden"]),
.inat-asd-wrap textarea { display: block; width: 100%; border-radius: 9px; border: 1px solid #bfcbd1; color: #172c38; background: #fff; font: inherit; font-weight: 400; font-size: 1rem; padding: .79rem .85rem; min-height: 46px; transition: border-color .2s, box-shadow .2s; }
.inat-asd-wrap input[type="file"] { padding: .8rem; }
.inat-asd-wrap textarea { min-height: 150px; resize: vertical; }
.inat-asd-wrap input:focus-visible, .inat-asd-wrap textarea:focus-visible, .inat-asd-wrap a:focus-visible, .inat-asd-wrap button:focus-visible { outline: 3px solid rgba(19,94,120,.23); outline-offset: 2px; border-color: var(--inat-asd-accent); }
.inat-asd-check { display: flex; gap: .65rem; align-items: flex-start; font-size: .9rem; font-weight: 400; margin: 1.5rem 0; }
.inat-asd-check input { width: 1rem; height: 1rem; accent-color: var(--inat-asd-accent); flex: 0 0 auto; margin-top: .24rem; }
.inat-asd-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; border: 1px solid var(--inat-asd-accent); background: var(--inat-asd-accent); color: #fff !important; padding: .82rem 1.45rem; border-radius: 9px; font: inherit; font-weight: 700; font-size: .95rem; text-decoration: none !important; cursor: pointer; line-height: 1.2; transition: background .2s, transform .2s; }
.inat-asd-button:hover { background: #0d485e; transform: translateY(-1px); }
.inat-asd-button-ghost { background: #fff; color: var(--inat-asd-accent) !important; }
.inat-asd-button-ghost:hover { background: var(--inat-asd-tint); }
.inat-asd-button-small { padding: .65rem 1.05rem; font-size: .88rem; }
.inat-asd-small, .inat-asd-hint { color: var(--inat-asd-muted); font-size: .83rem; font-weight: 400; }
.inat-asd-form .inat-asd-small { margin-bottom: 0; }
.inat-asd-hint { display: block; margin-top: .2rem; }
.inat-asd-honeypot { position: absolute !important; left: -99999px !important; opacity: 0; pointer-events: none; }
.inat-asd-notice { border-left: 4px solid var(--inat-asd-accent); background: var(--inat-asd-tint); padding: 1rem 1.25rem; border-radius: 8px; margin: 1.25rem 0; font-weight: 600; }
.inat-asd-notice[hidden] { display: none !important; }
.inat-asd-notice-error { border-left-color: #ad253e; background: #fff1f2; color: #80172c; }
.inat-asd-button:disabled { opacity: .65; cursor: wait; transform: none; }
.inat-asd-dashboard-head, .inat-asd-section-head { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .8rem 1.4rem; }
.inat-asd-dashboard-head { padding-bottom: 1.8rem; margin-bottom: 1.8rem; border-bottom: 1px solid var(--inat-asd-border); }
.inat-asd-section-head { margin: 1.5rem 0 1.05rem; }
.inat-asd-text-link { font-weight: 700; text-decoration: underline; }
.inat-asd-count { display: inline-flex; align-items: center; justify-content: center; border-radius: 40px; padding: .12rem .55rem; font-size: .76rem; font-weight: 750; color: var(--inat-asd-accent); background: #e7f0f3; vertical-align: middle; }
.inat-asd-table-scroll { width: 100%; overflow-x: auto; margin: 1rem 0 3rem; border: 1px solid var(--inat-asd-border); border-radius: 11px; }
.inat-asd-table { width: 100%; border-collapse: collapse; background: #fff; min-width: 570px; margin: 0; }
.inat-asd-table th, .inat-asd-table td { text-align: left; padding: 1.05rem; border-bottom: 1px solid var(--inat-asd-border); vertical-align: middle; }
.inat-asd-table th { background: var(--inat-asd-tint); color: var(--inat-asd-muted); text-transform: uppercase; font-size: .72rem; letter-spacing: .09em; }
.inat-asd-table tr:last-child td { border-bottom: 0; }
.inat-asd-pill { display: inline-block; border-radius: 30px; padding: .33rem .63rem; white-space: nowrap; font-weight: 700; font-size: .75rem; background: #eaf1f5; color: #294b60; }
.inat-asd-pill.pending { background: #fff4d9; color: #7a5a06; }
.inat-asd-pill.publish { background: #dff6e8; color: #1c673a; }
.inat-asd-editor { scroll-margin-top: 90px; }
.inat-asd-actions { display: flex; gap: .8rem; flex-wrap: wrap; margin-top: 1.7rem; }
.inat-asd-existing-image { display: flex; align-items: center; gap: 1rem; margin-top: 1.25rem; font-size: .82rem; color: var(--inat-asd-muted); }
.inat-asd-existing-image img { width: 115px; max-height: 90px; height: auto; object-fit: contain; }
.inat-asd-empty { border: 1px dashed var(--inat-asd-border); padding: 1.3rem; border-radius: 10px; color: var(--inat-asd-muted); background: var(--inat-asd-tint); }
.inat-asd-events-section { margin: 0 0 3.6rem; }
.inat-asd-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.inat-asd-event-card { display: flex; flex-direction: column; border: 1px solid var(--inat-asd-border); border-radius: var(--inat-asd-radius); overflow: hidden; background: #fff; min-width: 0; }
.inat-asd-event-image { background: var(--inat-asd-tint); aspect-ratio: 16 / 10; }
.inat-asd-event-image img { width: 100%; height: 100%; object-fit: contain; display: block; }
.inat-asd-event-body { padding: 1.4rem; flex: 1; }
.inat-asd-event-body h3 { font-size: 1.35rem; overflow-wrap: anywhere; }
.inat-asd-event-info { display: flex; flex-direction: column; gap: .15rem; margin: 1.05rem 0; font-size: .89rem; color: var(--inat-asd-muted); }
.inat-asd-event-info strong { color: var(--inat-asd-ink); }
.inat-asd-event-description { overflow-wrap: anywhere; font-size: .94rem; }
.inat-asd-event-description p { margin: 0 0 .85rem; }
.inat-asd-contact { font-size: .88rem; overflow-wrap: anywhere; }
.inat-asd-pagination { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: 1.4rem; }
.inat-asd-pagination a { display: inline-flex; width: 36px; height: 36px; justify-content: center; align-items: center; border: 1px solid var(--inat-asd-border); border-radius: 7px; text-decoration: none; }
.inat-asd-pagination a[aria-current="page"] { background: var(--inat-asd-accent); color: #fff; }
.inat-asd-wrap #loginform { max-width: 420px; padding: 1.5rem; border: 1px solid var(--inat-asd-border); border-radius: var(--inat-asd-radius); }
.inat-asd-wrap #loginform p { margin: 0 0 1rem; }
.inat-asd-wrap #loginform label { margin-bottom: .35rem; display: block; }
.inat-asd-wrap #loginform .login-remember label { display: flex; gap: .5rem; flex-direction: row; }
.inat-asd-wrap #loginform input[type="submit"] { background: var(--inat-asd-accent); border: 0; color: #fff; border-radius: 8px; padding: .75rem 1.3rem; font: inherit; font-weight: 700; cursor: pointer; }
@media (max-width: 880px) { .inat-asd-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .inat-asd-grid, .inat-asd-cards { grid-template-columns: 1fr; } .inat-asd-form { padding: 1.1rem; } .inat-asd-actions { flex-direction: column; } .inat-asd-actions .inat-asd-button { width: 100%; } .inat-asd-dashboard-head { align-items: flex-start; } }
