/* PTC Events Tweaks v1.2.0 - scoped styles for Events Manager 7.4.8 markup. House green #1f4d33. */
.ptc-events,.em.em-event-single,.em.em-event-editor,.em-event-admin-editor,.ptc-submitted-by{
  --ptc-g9:#1f4d33;--ptc-g7:#1d6b4a;--ptc-g1:#e8f4ec;--ptc-peach:#f4a261;--ptc-ink:#1c2a24;--ptc-mut:#4d5c55;--ptc-line:#dfe8e2;--ptc-bg:#f7faf8;
}
.ptc-events{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ptc-ink);line-height:1.55;font-size:17px;max-width:1200px;margin:0 auto}
.ptc-events *,.ptc-events *::before,.ptc-events *::after{box-sizing:border-box}
.ptc-events a{color:var(--ptc-g7)}
.ptc-events a:focus-visible,.em.em-event-editor :focus-visible{outline:3px solid var(--ptc-peach);outline-offset:2px}

/* Hero strip */
.ptc-ev-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:linear-gradient(135deg,#1f4d33,#1d6b4a);color:#fff;border-radius:24px;padding:36px;margin:0 0 32px;box-shadow:0 14px 34px rgba(15,61,46,.14)}
.ptc-ev-eyebrow{display:inline-block;background:rgba(244,162,97,.18);border:1px solid rgba(244,162,97,.6);color:#ffd9b8;font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:13px;padding:6px 12px;border-radius:999px;margin:0 0 12px}
.ptc-ev-hero h1{color:#fff;font-size:clamp(30px,4.4vw,48px);line-height:1.08;letter-spacing:-.02em;margin:0 0 8px;font-weight:800}
.ptc-ev-sub{margin:0;color:#dcebe2;max-width:620px}
.ptc-ev-btn{display:inline-block;font-weight:700;text-decoration:none!important;padding:13px 24px;border-radius:12px;transition:.15s;white-space:nowrap}
.ptc-ev-btn-peach{background:var(--ptc-peach);color:#1c1308!important}
.ptc-ev-btn-peach:hover{background:#ffb87d}
.ptc-ev-btn-green{background:var(--ptc-g9);color:#fff!important}
.ptc-ev-btn-green:hover{background:var(--ptc-g7)}

/* Layout */
.ptc-ev-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:28px;align-items:start}
.ptc-ev-panel{background:#fff;border:1px solid var(--ptc-line);border-radius:20px;padding:24px;box-shadow:0 6px 24px rgba(15,61,46,.06);min-width:0}
.ptc-ev-panel h2{font-size:clamp(22px,2.4vw,28px);margin:0 0 16px;color:var(--ptc-g9);letter-spacing:-.01em}

/* Calendar: EM uses CSS vars on .em.em-calendar */
.ptc-events .em.em-calendar{
  --nav-color:var(--ptc-g9);--nav-border:1px solid var(--ptc-line);
  --header-color:var(--ptc-mut);--header-border:1px solid var(--ptc-line);--header-background:transparent;
  --date-color:var(--ptc-ink);--date-background:#fff;--date-border-color:var(--ptc-line);--date-box-border:1px solid var(--ptc-line);
  --date-today-color:#fff;--date-today-background:var(--ptc-g9);
  --event-background-color:var(--ptc-g9);--event-border-color:var(--ptc-g9);--event-color:#fff;
  --counter-background:var(--ptc-peach);--calendar-background:#fff;
  --accent-color:var(--ptc-g9);--accent-color-hover:var(--ptc-g7);
  font-family:inherit;max-width:100%}
.ptc-events .em.em-calendar .em-cal-nav{border:0;padding:0 0 12px;font-weight:700}
.ptc-events .em.em-calendar .em-cal-nav .month input,.ptc-events .em.em-calendar .em-month-picker{color:var(--ptc-g9);font-weight:800;font-size:20px}
.ptc-events .em.em-calendar .em-calnav{color:var(--ptc-g9)}
.ptc-events .em.em-calendar .em-calnav-today{border-radius:999px;border-color:var(--ptc-g9);color:var(--ptc-g9)}
.ptc-events .em.em-calendar .em-cal-head > div{text-transform:uppercase;font-size:12px;letter-spacing:.06em;font-weight:700}
.ptc-events .em.em-calendar .em-cal-body .em-cal-day.eventful .em-cal-day-date a{color:var(--ptc-g9);font-weight:800}
.ptc-events .em.em-calendar .em-cal-body.event-style-pill .em-cal-event{border-radius:8px}
.ptc-events .em.em-calendar .em-cal-body.event-style-pill .em-cal-event > div{background:var(--ptc-g1);border-left:3px solid var(--ptc-g9);color:var(--ptc-g9);border-radius:6px}
.ptc-events .em.em-calendar .em-cal-body.event-style-pill .em-cal-event > div a{color:var(--ptc-g9)!important;font-weight:600}
.ptc-events .em.em-calendar .em-cal-dot{background-color:var(--ptc-g9)}

/* Upcoming list (our own format markup) */
.ptc-ev-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.ptc-ev-card{position:relative;display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--ptc-line);border-radius:18px;padding:16px;box-shadow:0 4px 16px rgba(15,61,46,.06);transition:transform .18s,box-shadow .18s}
.ptc-ev-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,61,46,.14)}
.ptc-ev-date{flex:none;width:60px;text-align:center;background:var(--ptc-g9);color:#fff;border-radius:12px;padding:8px 4px;line-height:1;box-shadow:inset 0 -3px 0 var(--ptc-peach)}
.ptc-ev-mon{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.9}
.ptc-ev-day{display:block;font-size:26px;font-weight:800;margin-top:4px}
.ptc-ev-body{min-width:0;flex:1}
.ptc-ev-title{font-size:18px;line-height:1.25;margin:0 0 6px}
.ptc-ev-title a{color:var(--ptc-ink)!important;text-decoration:none}
.ptc-ev-title a::after{content:"";position:absolute;inset:0;border-radius:18px}
.ptc-ev-meta{margin:0;color:var(--ptc-mut);font-size:14.5px;display:flex;flex-direction:column;gap:2px}
.ptc-ev-venue::before{content:"\1F4CD\00a0"}
.ptc-ev-card .ptc-submitted-by{margin:8px 0 0;font-size:13.5px}
.ptc-events .em-pagination{margin-top:18px;display:flex;flex-wrap:wrap;gap:6px}
.ptc-events .em-pagination a,.ptc-events .em-pagination strong,.ptc-events .em-pagination span{display:inline-block;padding:6px 12px;border-radius:10px;border:1px solid var(--ptc-line);text-decoration:none;font-weight:700}
.ptc-events .em-pagination strong,.ptc-events .em-pagination .current{background:var(--ptc-g9);color:#fff;border-color:var(--ptc-g9)}

/* Empty state */
.ptc-ev-empty{text-align:center;background:#fff6ee;border:1px dashed #f6d6bb;border-radius:18px;padding:32px 20px}
.ptc-ev-empty-t{font-size:19px;font-weight:800;color:var(--ptc-g9);margin:0 0 6px}
.ptc-ev-empty p{margin:0 0 16px;color:var(--ptc-mut)}

/* Submitted by (everywhere) */
.ptc-submitted-by{color:var(--ptc-g9);font-style:italic;margin-top:1em}

/* Single event page */
.em.em-event-single{--accent-color:#1f4d33;--accent-color-hover:#1d6b4a;--default-border:#1f4d33;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ptc-ink)}
.em.em-event-single .em-item-header{background:#fff;border:1px solid var(--ptc-line);border-radius:20px;padding:24px;box-shadow:0 6px 24px rgba(15,61,46,.06);gap:24px}
.em.em-event-single .em-item-image img{border-radius:14px}
.em.em-event-single .em-item-meta h3{color:var(--ptc-g9);font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}
.em.em-event-single .em-item-meta-line{color:var(--ptc-ink)}
.em.em-event-single .em-icon{background-color:var(--ptc-g9)}
.em.em-event-single a{color:var(--ptc-g7)}
.em.em-event-single .em-event-content{margin-top:24px;font-size:17px;line-height:1.6}
.em.em-event-single .button,.em.em-event-single button{border-radius:12px;border-color:var(--ptc-g9);color:var(--ptc-g9)}
.em.em-event-single .em-event-location iframe,.em.em-event-single .em-location-map-container{border-radius:14px;overflow:hidden}

/* Submit / edit form ([event_form], Edit Events page) */
.em.em-event-editor{--accent-color:#1f4d33;--accent-color-hover:#1d6b4a;--border-radius:12px;background:#fff;border:1px solid var(--ptc-line);border-radius:20px;padding:28px;box-shadow:0 6px 24px rgba(15,61,46,.06);font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;max-width:860px}
.em.em-event-editor section{margin-bottom:24px}
.em.em-event-editor h3{color:var(--ptc-g9);font-size:20px;border-bottom:2px solid var(--ptc-g1);padding-bottom:6px}
.em.em-event-editor input[type=text],.em.em-event-editor input[type=email],.em.em-event-editor input[type=url],.em.em-event-editor textarea,.em.em-event-editor select{border:1px solid var(--ptc-line);border-radius:12px;padding:10px 12px}
.em.em-event-editor input:focus,.em.em-event-editor textarea:focus,.em.em-event-editor select:focus{border-color:var(--ptc-g9);box-shadow:0 0 0 3px var(--ptc-g1)}
.em.em-event-editor .event-form-submit input[type=submit],.em.em-event-editor .button-primary{background:var(--ptc-g9);border-color:var(--ptc-g9);color:#fff;border-radius:12px;font-weight:700;padding:0 28px;height:46px}
.em.em-event-editor .event-form-submit input[type=submit]:hover{background:var(--ptc-g7)}

/* Mobile */
@media (max-width:900px){.ptc-ev-grid{grid-template-columns:1fr}}
@media (max-width:600px){
  .ptc-ev-hero{padding:24px;border-radius:18px;margin-bottom:20px}
  .ptc-ev-hero .ptc-ev-btn{width:100%;text-align:center}
  .ptc-ev-panel{padding:16px;border-radius:16px}
  .ptc-ev-card{padding:14px;gap:12px}
  .ptc-ev-date{width:52px}.ptc-ev-day{font-size:22px}
  .em.em-event-single .em-item-header,.em.em-event-editor{padding:16px;border-radius:16px}
}

/* ===== v1.1.1 fixes (higher specificity than EM 7.4.8 events-manager.css) ===== */

/* EM theme variables, forced for our scopes */
body .em.pixelbones.em-calendar,body .em.pixelbones.em-event-editor,body .em.pixelbones.em-event-single{
  --accent-color:#1f4d33!important;--accent-color-hover:#16392a!important;--button-primary-color:#fff!important;
  --font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;
  --text-color-normal:#1c2a24!important;--text-color-softer:#4d5c55!important;
  --border-color:#dfe8e2!important;--border-color-softer:#dfe8e2!important;--border-radius:12px!important;
}

/* Calendar header: deliberate green bar, white month + arrows, visible Today pill */
body .ptc-events .em.em-calendar{--nav-color:#fff;--nav-background:transparent}
body .ptc-events .em.em-calendar .em-cal-nav{background:#1f4d33!important;color:#fff;border:0!important;border-radius:14px 14px 0 0;padding:6px 12px!important;margin:0!important}
body .ptc-events .em.em-calendar .em-cal-nav > div{margin:6px 0!important}
body .ptc-events .em.em-calendar .em-cal-nav .month,
body .ptc-events .em.em-calendar .em-cal-nav .month form{background:transparent!important;margin-left:0}
body .ptc-events .em.em-calendar .em-cal-nav .month input,
body .ptc-events .em.em-calendar .em-cal-nav .month input[type=month],
body .ptc-events .em.em-calendar .em-cal-nav .month input[type=text]{background:transparent!important;background-color:transparent!important;box-shadow:none!important;color:#fff!important;-webkit-text-fill-color:#fff;font-weight:800!important;font-size:20px!important;font-family:inherit!important;padding:6px 4px!important;border:0!important;outline:0;min-height:0;height:auto}
body .ptc-events .em.em-calendar .em-cal-nav .month input:focus-visible{outline:2px solid #f4a261!important;border-radius:8px}
body .ptc-events .em.em-calendar .em-cal-nav .month .toggle{filter:brightness(0) invert(1)}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav{display:flex!important;align-items:center;gap:8px;margin:6px 0!important}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav{background:transparent!important;color:#fff!important;width:34px!important;height:34px!important;border-radius:10px;display:grid!important;place-items:center}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav:hover{background:rgba(255,255,255,.14)!important;filter:none!important}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav svg{width:20px!important;height:20px!important;stroke:#fff!important}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav svg path{stroke:#fff!important;stroke-width:1.8}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav[data-disabled="1"]{opacity:.35}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav-today,
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav-today.button{background:transparent!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.7)!important;border-radius:999px!important;padding:0 14px!important;height:32px!important;line-height:29px!important;font-size:13px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important;margin:0!important}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav-today:hover{background:#fff!important;color:#1f4d33!important}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav-today.is-today{opacity:.55}
body .ptc-events .em.em-calendar .em-cal-nav .month-nav .em-calnav-today.is-today:hover{background:transparent!important;color:#fff!important}
body .ptc-events .em.em-calendar .em-cal-head{background:#f7faf8}

/* Submit form: headings */
body .em.pixelbones.em-event-editor h3,
body .em.pixelbones.em-event-editor h3 label{font-family:inherit!important;font-weight:800!important;font-size:20px!important;letter-spacing:-.01em!important;line-height:1.3!important;color:#1f4d33!important;text-transform:none!important}
body .em.pixelbones.em-event-editor h3{margin:8px 0 14px!important;padding-bottom:8px;border-bottom:2px solid #e8f4ec}
body .em.pixelbones.em-event-editor{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;color:#1c2a24}
body .em.pixelbones.em-event-editor label{font-weight:600;color:#1c2a24}

/* Event Name: label is an h3 inside .event-form-name; keep it attached to its field */
body .em.pixelbones.em-event-editor .event-form-name h3{border-bottom:0!important;padding-bottom:0!important;margin:0 0 6px!important}
body .em.pixelbones.em-event-editor .event-form-name h3 label{font-size:15px!important;font-weight:700!important;color:#1c2a24!important}
body .em.pixelbones.em-event-editor .event-form-name .input{color:#4d5c55;font-size:14px}
body .em.pixelbones.em-event-editor .event-form-name input#event-name{margin-bottom:6px!important;width:100%}

/* Fields */
body .em.pixelbones.em-event-editor input[type=text],body .em.pixelbones.em-event-editor input[type=email],body .em.pixelbones.em-event-editor input[type=url],body .em.pixelbones.em-event-editor input[type=number],body .em.pixelbones.em-event-editor select,body .em.pixelbones.em-event-editor textarea{border:1px solid #dfe8e2!important;border-radius:12px!important;font-family:inherit!important;font-size:15px!important}

/* Submit button: EM uses .em.pixelbones .input input[type=submit].button-primary with !important */
body .em.pixelbones.em-event-editor .event-form-submit .input input[type=submit].button-primary,
body .em.pixelbones.em-event-editor .input input[type=submit].button-primary,
body .em.pixelbones.em-event-editor input[type=submit].button-primary{background:#1f4d33!important;background-color:#1f4d33!important;border:0!important;border-color:#1f4d33!important;color:#fff!important;border-radius:12px!important;font-family:inherit!important;font-weight:700!important;font-size:16px!important;text-transform:none!important;letter-spacing:0!important;height:auto!important;line-height:1.2!important;padding:14px 28px!important;cursor:pointer;transition:background .15s}
body .em.pixelbones.em-event-editor .input input[type=submit].button-primary:hover,
body .em.pixelbones.em-event-editor .input input[type=submit].button-primary:focus{background:#1d6b4a!important;background-color:#1d6b4a!important;color:#fff!important}
body .em.pixelbones.em-event-editor .input input[type=submit].button-primary:focus-visible{outline:3px solid #f4a261!important;outline-offset:2px!important}

/* Secondary buttons (Add Time Slot, Add Media) */
body .em.pixelbones.em-event-editor .input .button:not(.button-primary):not([data-nostyle]),
body .em.pixelbones.em-event-editor .wp-media-buttons .button{border:1.5px solid #1d6b4a!important;color:#1d6b4a!important;background:#fff!important;border-radius:10px!important;font-weight:700!important;font-family:inherit!important}
body .em.pixelbones.em-event-editor .input .button:not(.button-primary):not([data-nostyle]):hover,
body .em.pixelbones.em-event-editor .wp-media-buttons .button:hover{background:#e8f4ec!important}

/* WP editor (quicktags / Visual-Code tabs) */
body .em-event-editor .wp-editor-container{border:1px solid #dfe8e2!important;border-radius:12px;overflow:hidden}
body .em-event-editor .quicktags-toolbar{background:#f7faf8!important;border-bottom:1px solid #dfe8e2!important;padding:8px!important;display:flex;flex-wrap:wrap;gap:6px}
body .em-event-editor .quicktags-toolbar input.ed_button,
body .em-event-editor .quicktags-toolbar input.button{min-height:32px!important;min-width:36px;padding:4px 10px!important;margin:0!important;font-size:13px!important;font-weight:700!important;font-family:inherit!important;line-height:1.2!important;color:#1f4d33!important;background:#fff!important;border:1px solid #dfe8e2!important;border-radius:8px!important;cursor:pointer;text-decoration:none!important}
body .em-event-editor .quicktags-toolbar input.ed_button:hover{background:#e8f4ec!important;border-color:#1d6b4a!important}
body .em-event-editor .wp-editor-tabs .wp-switch-editor{border-radius:8px 8px 0 0;font-size:13px;font-weight:700;padding:6px 12px;color:#1f4d33;background:#f7faf8;border-color:#dfe8e2}
body .em-event-editor .html-active .switch-html,body .em-event-editor .tmce-active .switch-tmce{background:#fff;color:#1f4d33}
body .em-event-editor .mce-toolbar .mce-btn button{padding:6px 8px}
body .em-event-editor textarea.wp-editor-area{border:0!important;border-radius:0!important;padding:12px!important;font-size:15px!important}

/* File input (Event Image) */
body .em.pixelbones.em-event-editor input[type=file]{font-family:inherit;font-size:14px;color:#4d5c55;padding:10px;border:1.5px dashed #b9d3c3;border-radius:12px;background:#f7faf8;width:100%;max-width:100%;height:auto}
body .em.pixelbones.em-event-editor input[type=file]::file-selector-button{margin-right:12px;border:0;border-radius:10px;padding:10px 18px;background:#1f4d33;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:background .15s}
body .em.pixelbones.em-event-editor input[type=file]::file-selector-button:hover{background:#1d6b4a}
body .em.pixelbones.em-event-editor input[type=file]::-webkit-file-upload-button{margin-right:12px;border:0;border-radius:10px;padding:10px 18px;background:#1f4d33;color:#fff;font:inherit;font-weight:700;cursor:pointer}

@media (max-width:600px){
  body .em.pixelbones.em-event-editor input[type=submit].button-primary{width:100%}
  body .ptc-events .em.em-calendar .em-cal-nav .month input{font-size:18px!important}
}

/* ===== v1.2.0: category hubs, chips, address/map, form type select ===== */
.ptc-ev-stack{display:flex;flex-direction:column;gap:28px;max-width:860px;margin:0 auto}
.ptc-ev-chip{display:inline-block;font-size:12px;font-weight:700;line-height:1.2;padding:4px 10px;border-radius:999px;margin:0 0 6px;background:#e8f4ec;color:#1d6b4a}
.ptc-ev-chip-yard-sales{background:#fff1e4;color:#9a4a12}
.ptc-ev-chip-open-houses{background:#e9eef8;color:#2b4a7a}
.ptc-ev-where{display:block;color:#1c2a24}
.ptc-ev-where::before{content:"\1F4CD\00a0"}
.ptc-ev-where-none{color:#4d5c55;font-style:italic}
.ptc-ev-hood{color:#4d5c55}
.ptc-ev-card .ptc-ev-map{position:relative;z-index:1;display:inline-block;margin-left:6px;font-weight:700;font-size:13px;color:#1d6b4a;background:#e8f4ec;border-radius:999px;padding:1px 10px;text-decoration:none}
.ptc-ev-card .ptc-ev-map:hover{background:#1f4d33;color:#fff}
.ptc-ev-host{margin:6px 0 0;font-size:14px;color:#1c2a24;font-weight:600}
.ptc-hub-yard-sales .ptc-ev-date{box-shadow:inset 0 -3px 0 #f4a261}
body .em.pixelbones.em-event-editor .event-form-ptc-type{background:#f7faf8;border:1px solid #dfe8e2;border-radius:16px;padding:16px 18px}
body .em.pixelbones.em-event-editor .event-form-ptc-type h3{border-bottom:0!important;padding:0!important;margin:0 0 8px!important}
body .em.pixelbones.em-event-editor .event-form-ptc-type select{width:100%;font-weight:700!important;height:auto;padding:10px 12px}
body .em.pixelbones.em-event-editor .ptc-hosted-by{margin-top:12px}
body .em.pixelbones.em-event-editor .ptc-hosted-by input{width:100%}
.ptc-req{color:#9a4a12}
@media (max-width:600px){.ptc-ev-stack{gap:20px}}
