.ruangaksi-wa-handoff { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: start; max-width: 920px; margin: 1.5rem auto 2rem; padding: 1.45rem; border: 1px solid #c9d9ef; border-radius: 22px; background: #edf4ff; color: #092c63; }
.ruangaksi-wa-handoff__icon { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: #ffca1a; color: #092c63; font-size: 1.55rem; }
.ruangaksi-wa-handoff__eyebrow { margin: 0 0 .4rem; color: #1e62a7; font-family: sans-serif; font-size: .72rem; font-weight: 850; letter-spacing: .1em; line-height: 1.2; text-transform: uppercase; }
.ruangaksi-wa-handoff h2 { margin: 0 0 .55rem; color: #092c63; font-size: 1.7rem; line-height: 1.15; }
.ruangaksi-wa-handoff p:not(.ruangaksi-wa-handoff__eyebrow) { max-width: 620px; margin: 0; color: #405675; font-size: .9rem; }
.ruangaksi-wa-handoff__button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: .6rem; margin-top: 1rem; padding: .7rem 1.05rem; border: 1px solid #ffca1a !important; border-radius: 999px; background: #ffca1a !important; color: #092c63 !important; font-size: .88rem; font-weight: 800; line-height: 1; text-decoration: none; transition: background .2s, transform .2s; }
.ruangaksi-wa-handoff__button:hover, .ruangaksi-wa-handoff__button:focus-visible { border-color: #e7ad00 !important; background: #e7ad00 !important; color: #092c63 !important; transform: translateY(-1px); }
.ruangaksi-wa-order-action { margin-top: 1.5rem; }
.ruangaksi-wa-trip-details { margin: .9rem 0; padding: .9rem 1rem; border: 1px solid #dce5f2; border-radius: 13px; background: #fffaf0; color: #092c63; }.ruangaksi-wa-trip-details h2 { margin: 0 0 .6rem; font-family: sans-serif; font-size: .72rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }.ruangaksi-wa-trip-details dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem .8rem; margin: 0; }.ruangaksi-wa-trip-details dl > div { display: grid; gap: .15rem; }.ruangaksi-wa-trip-details dt { color: #65738b; font-size: .7rem; font-weight: 700; }.ruangaksi-wa-trip-details dd { margin: 0; color: #092c63; font-size: .8rem; font-weight: 800; }
@media (max-width: 520px) { .ruangaksi-wa-handoff { grid-template-columns: 1fr; padding: 1.2rem; }.ruangaksi-wa-trip-details dl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; } }

/* Registration flow for volunteer activity tickets. */
.ruangaksi-registration-hint { display: flex; align-items: flex-start; gap: .5rem; margin: 0 0 .9rem; padding: .75rem .85rem; border: 1px solid #d5e4f7; border-radius: 12px; background: #f1f7ff; color: #355a8e; font-size: .82rem; line-height: 1.45; }
.ruangaksi-registration-hint span { flex: 0 0 auto; }
.ruangaksi-registration-intro { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; max-width: 920px; margin: 0 auto 1.7rem; padding: 1.25rem 1.35rem; border: 1px solid #c9d9ef; border-radius: 20px; background: linear-gradient(135deg, #f7fbff, #e8f2ff); color: #092c63; }
.ruangaksi-registration-intro__icon { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 13px; background: #ffca1a; color: #092c63; font-size: 1.25rem; font-weight: 900; }
.ruangaksi-registration-intro__eyebrow { margin: 0 0 .25rem; color: #1e62a7; font-family: sans-serif; font-size: .7rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.ruangaksi-registration-intro h2 { margin: 0; color: #092c63; font-size: 1.45rem; line-height: 1.15; }
.ruangaksi-registration-intro p:not(.ruangaksi-registration-intro__eyebrow) { max-width: 650px; margin: .45rem 0 0; color: #49658d; font-size: .86rem; line-height: 1.55; }
.ruangaksi-registration-fields-heading { margin: 0 0 1rem; padding: .85rem 1rem; border-left: 3px solid #ffca1a; border-radius: 0 10px 10px 0; background: #f7fbff; }
.ruangaksi-registration-fields-heading p { margin: 0; color: #092c63; font-size: .91rem; font-weight: 850; }
.ruangaksi-registration-fields-heading span { display: block; margin-top: .15rem; color: #65738b; font-size: .76rem; }
.ruangaksi-activity-checkout .woocommerce-billing-fields > h3 { display: none; }
.ruangaksi-activity-checkout #billing_address_1_field::before { display: block; margin: .85rem 0 1rem; color: #092c63; font-family: sans-serif; font-size: 1rem; font-weight: 850; letter-spacing: .025em; }
.ruangaksi-activity-checkout #billing_address_1_field::before { content: 'B. Alamat lengkap'; }
.ruangaksi-activity-consent { margin-top: 1.2rem !important; padding: .9rem 1rem !important; border: 1px solid #d9e5f4; border-radius: 12px; background: #f8fbff; }
.ruangaksi-activity-consent label { display: flex !important; gap: .55rem; align-items: flex-start; margin: 0 !important; color: #36547d !important; font-size: .82rem !important; line-height: 1.45; }
.ruangaksi-activity-consent input { flex: 0 0 auto; margin-top: .2rem; accent-color: #1e62a7; }
.ruangaksi-registration-summary { max-width: 920px; margin: 1.5rem auto; padding: 1.15rem 1.25rem; border: 1px solid #c9d9ef; border-radius: 16px; background: #f4f8ff; }
.ruangaksi-registration-summary h2 { margin: 0 0 .75rem; color: #092c63; font-family: sans-serif; font-size: .78rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.ruangaksi-registration-summary dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 0; }
.ruangaksi-registration-summary dl > div { display: grid; gap: .1rem; }
.ruangaksi-registration-summary dt { color: #65738b; font-size: .72rem; font-weight: 700; }
.ruangaksi-registration-summary dd { margin: 0; color: #092c63; font-size: .84rem; font-weight: 800; }
@media (max-width: 520px) { .ruangaksi-registration-intro { grid-template-columns: 1fr; padding: 1.1rem; }.ruangaksi-registration-summary dl { grid-template-columns: 1fr; gap: .55rem; } }

/* Existing volunteers verify their ID here; first registration remains on its own page. */
.ruangaksi-activity-checkout .woocommerce-billing-fields > h3 { display: none; }
.ruangaksi-activity-checkout .woocommerce-billing-fields__field-wrapper { display: grid; gap: .85rem; }
.ruangaksi-activity-checkout .ruangaksi-volunteer-id-field { margin: 0 !important; padding: .95rem 1rem; border: 1px solid #c9d9ef; border-radius: 14px; background: #f5f9ff; }
.ruangaksi-activity-checkout .ruangaksi-volunteer-id-field label { color: #092c63; font-size: .85rem; font-weight: 850; }.ruangaksi-activity-checkout .ruangaksi-volunteer-id-field input { min-height: 48px; border: 1px solid #93b7e5; border-radius: 10px; background: #fff; color: #092c63; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.ruangaksi-activity-checkout #billing_phone_field { margin: 0 !important; }.ruangaksi-activity-checkout .woocommerce-additional-fields { display: none; }

/* Payment return panel for orders made through TriPay. */
.ruangaksi-tripay-payment { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: start; max-width: 920px; margin: 1.5rem auto 2rem; padding: 1.45rem; border: 1px solid #bde7ce; border-radius: 22px; background: linear-gradient(135deg, #f3fff7, #e6f9ed); color: #12422a; }
.ruangaksi-tripay-payment__icon { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: #0d9b51; color: #fff; font-size: 1.25rem; font-weight: 900; }.ruangaksi-tripay-payment__eyebrow { margin: 0 0 .35rem; color: #078144; font-family: sans-serif; font-size: .72rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }.ruangaksi-tripay-payment h2 { margin: 0 0 .5rem; color: #12422a; font-size: 1.55rem; line-height: 1.16; }.ruangaksi-tripay-payment p:not(.ruangaksi-tripay-payment__eyebrow):not(.ruangaksi-tripay-payment__code) { margin: 0; color: #456451; font-size: .89rem; line-height: 1.55; }.ruangaksi-tripay-payment__code { display: grid; gap: .25rem; width: fit-content; min-width: 220px; margin: .95rem 0 !important; padding: .75rem .9rem; border: 1px dashed #75bd94; border-radius: 12px; background: #fff; }.ruangaksi-tripay-payment__code span { color: #568060; font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.ruangaksi-tripay-payment__code strong { color: #12422a; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 1.1rem; letter-spacing: .05em; }.ruangaksi-tripay-payment__button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: .5rem; margin-top: 1rem; padding: .7rem 1rem; border: 1px solid #0d9b51 !important; border-radius: 999px; background: #0d9b51 !important; color: #fff !important; font-size: .85rem; font-weight: 850; text-decoration: none; }
@media (max-width: 520px) { .ruangaksi-tripay-payment { grid-template-columns: 1fr; padding: 1.2rem; }.ruangaksi-tripay-payment__code { width: 100%; } }

/* Reusable campaign cards rendered by [ruangaksi_campaign] and its grid shortcode. */
.ruangaksi-embed-campaign-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; }
.ruangaksi-embed-campaign { overflow: hidden; border: 1px solid #deebe3; border-radius: 18px; background: #fff; box-shadow: 0 9px 24px rgba(18,70,42,.09); color: #1e382c; }.ruangaksi-embed-campaign__image { display: block; aspect-ratio: 1.35; overflow: hidden; background: #eaf6ee; }.ruangaksi-embed-campaign__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }.ruangaksi-embed-campaign:hover .ruangaksi-embed-campaign__image img { transform: scale(1.035); }.ruangaksi-embed-campaign__body { padding: 1.05rem; }.ruangaksi-embed-campaign__theme { display: inline-flex; margin-bottom: .55rem; padding: .25rem .5rem; border-radius: 999px; background: color-mix(in srgb, var(--ruangaksi-campaign-accent, #05a956) 12%, white); color: var(--ruangaksi-campaign-accent, #05a956); font-size: .68rem; font-weight: 850; }.ruangaksi-embed-campaign h3 { margin: 0; color: #1e382c; font-size: 1.08rem; line-height: 1.25; }.ruangaksi-embed-campaign h3 a { color: inherit; text-decoration: none; }.ruangaksi-embed-campaign__meta { display: grid; gap: .32rem; margin-top: .75rem; color: #67796f; font-size: .76rem; }.ruangaksi-embed-campaign__meta span { display: block; }.ruangaksi-embed-campaign__price { margin: .8rem 0 0; color: #17412c; font-size: 1.05rem; font-weight: 850; }.ruangaksi-embed-campaign__price .price { color: inherit; }.ruangaksi-embed-campaign__proof { margin: .7rem 0 0; color: #62756a; font-size: .72rem; line-height: 1.4; }.ruangaksi-embed-campaign__button { display: flex; min-height: 42px; align-items: center; justify-content: center; gap: .45rem; margin-top: 1rem; border-radius: 10px; background: var(--ruangaksi-campaign-accent, #05a956); color: #fff !important; font-size: .8rem; font-weight: 850; text-decoration: none; }
@media (max-width: 860px) { .ruangaksi-embed-campaign-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .ruangaksi-embed-campaign-grid { grid-template-columns: 1fr; }.ruangaksi-embed-campaign { border-radius: 15px; } }

/* Standalone first-registration page for Volunteer IDs. */
.ruangaksi-volunteer-form { width: min(100% - 36px, 660px); margin: clamp(2.5rem, 7vw, 5.5rem) auto; padding: clamp(1.4rem, 4vw, 2.35rem); border: 1px solid #d5e3f4; border-radius: 24px; background: #fffef9; box-shadow: 0 18px 45px rgba(9,44,99,.10); }
.ruangaksi-volunteer-form__intro { max-width: 530px; }
.ruangaksi-volunteer-form__eyebrow { margin: 0 0 .55rem; color: #1e62a7; font-family: sans-serif; font-size: .7rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.ruangaksi-volunteer-form h1, .ruangaksi-volunteer-form h2 { margin: 0; color: #092c63; line-height: 1.08; }
.ruangaksi-volunteer-form h1 { font-size: clamp(2rem, 5vw, 3.1rem); }
.ruangaksi-volunteer-form h2 { font-size: clamp(1.7rem, 4vw, 2.35rem); }
.ruangaksi-volunteer-form__intro > p:last-child { margin: .85rem 0 0; color: #49658d; font-size: .93rem; line-height: 1.65; }
.ruangaksi-volunteer-form__fields { display: grid; gap: 1rem; margin-top: 2rem; }
.ruangaksi-volunteer-form__group { display: grid; gap: 1rem; min-width: 0; margin: 0; padding: 1.05rem; border: 1px solid #d9e5f4; border-radius: 15px; background: #fbfdff; }
.ruangaksi-volunteer-form__group legend { padding: 0 .35rem; color: #1e62a7; font-family: sans-serif; font-size: .76rem; font-weight: 850; letter-spacing: .06em; }
.ruangaksi-volunteer-form__fields p { margin: 0; }
.ruangaksi-volunteer-form__fields label { display: block; margin-bottom: .38rem; color: #274d83; font-size: .82rem; font-weight: 850; }
.ruangaksi-volunteer-form__fields abbr { border: 0; color: #c55a32; text-decoration: none; }
.ruangaksi-volunteer-form__fields input:not([type="checkbox"]):not([type="hidden"]), .ruangaksi-volunteer-form__fields textarea { width: 100%; min-height: 48px; padding: .65rem .8rem; border: 1px solid #cbdcf0; border-radius: 10px; background: #fff; color: #092c63; outline: 0; }
.ruangaksi-volunteer-form__fields textarea { min-height: 88px; resize: vertical; }
.ruangaksi-volunteer-form__fields input:not([type="checkbox"]):not([type="hidden"]):focus, .ruangaksi-volunteer-form__fields textarea:focus { border-color: #1e62a7; box-shadow: 0 0 0 3px rgba(30,98,167,.12); }
.ruangaksi-volunteer-form__honeypot { position: absolute !important; left: -9999px !important; opacity: 0 !important; pointer-events: none !important; }
.ruangaksi-volunteer-form__consent { margin-top: .2rem !important; padding: .9rem 1rem; border: 1px solid #d9e5f4; border-radius: 12px; background: #f7fbff; }
.ruangaksi-volunteer-form__consent label { display: flex; gap: .55rem; align-items: flex-start; margin: 0 !important; color: #3b5d87 !important; font-size: .8rem !important; font-weight: 650 !important; line-height: 1.48; }
.ruangaksi-volunteer-form__consent input { flex: 0 0 auto; margin-top: .18rem; accent-color: #1e62a7; }
.ruangaksi-volunteer-form__fields .button { justify-self: start; margin-top: .15rem; }
.ruangaksi-volunteer-form__footer { margin: 1.25rem 0 0; color: #65738b; font-size: .76rem; }
.ruangaksi-volunteer-form__notice { margin-top: 1.35rem; padding: .85rem 1rem; border: 1px solid #efc3b7; border-radius: 12px; background: #fff4f0; color: #a2442c; font-size: .84rem; }
.ruangaksi-volunteer-success { text-align: center; }
.ruangaksi-volunteer-success__icon { display: grid; width: 52px; height: 52px; place-items: center; margin: 0 auto 1rem; border-radius: 16px; background: #ffca1a; color: #092c63; font-size: 1.45rem; font-weight: 900; }
.ruangaksi-volunteer-success > p:not(.ruangaksi-volunteer-form__eyebrow) { max-width: 470px; margin: .85rem auto 0; color: #49658d; font-size: .9rem; line-height: 1.6; }
.ruangaksi-volunteer-id { display: block; width: fit-content; margin: 1.3rem auto .3rem; padding: .75rem 1rem; border: 1px dashed #8aaddb; border-radius: 12px; background: #eef6ff; color: #092c63; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: clamp(1.18rem, 4vw, 1.5rem); font-weight: 900; letter-spacing: .06em; }
.ruangaksi-volunteer-success__phone { color: #173d76 !important; font-weight: 800; }
.ruangaksi-volunteer-success__note { font-size: .78rem !important; }
.ruangaksi-volunteer-success .button { margin-top: 1.25rem; }
@media (max-width: 520px) { .ruangaksi-volunteer-form { width: min(100% - 28px, 660px); padding: 1.25rem; border-radius: 19px; }.ruangaksi-volunteer-form__fields .button { width: 100%; }.ruangaksi-volunteer-success .button { width: 100%; } }

/* Manual bank-transfer instructions displayed after the order is created. */
.ruangaksi-manual-bank { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: start; max-width: 920px; margin: 1.5rem auto 2rem; padding: 1.45rem; border: 1px solid #c9d9ef; border-radius: 22px; background: linear-gradient(135deg, #f7fbff, #e8f2ff); color: #092c63; }
.ruangaksi-manual-bank__icon { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 50%; background: #1e62a7; color: #fff; font-size: 1.2rem; font-weight: 900; }
.ruangaksi-manual-bank__eyebrow { margin: 0 0 .4rem; color: #1e62a7; font-family: sans-serif; font-size: .72rem; font-weight: 850; letter-spacing: .1em; line-height: 1.2; text-transform: uppercase; }
.ruangaksi-manual-bank h2 { margin: 0 0 .55rem; color: #092c63; font-size: 1.7rem; line-height: 1.15; }
.ruangaksi-manual-bank p:not(.ruangaksi-manual-bank__eyebrow) { max-width: 620px; margin: 0; color: #405675; font-size: .9rem; line-height: 1.55; }
.ruangaksi-manual-bank__account { display: grid; gap: .25rem; width: min(100%, 390px); margin: 1rem 0; padding: 1rem 1.1rem; border-radius: 14px; background: #092c63; color: #fff; box-shadow: 0 10px 20px rgba(9,44,99,.16); }
.ruangaksi-manual-bank__account span { color: #b9d3f5; font-size: .72rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.ruangaksi-manual-bank__account strong { color: #fff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: clamp(1.2rem, 3vw, 1.5rem); letter-spacing: .045em; }
.ruangaksi-manual-bank__account b { color: #dcecff; font-size: .82rem; }
.ruangaksi-manual-bank__copy { min-height: 40px; margin: -.25rem 0 .25rem !important; padding: .6rem .9rem !important; border: 1px solid #1e62a7 !important; border-radius: 999px !important; background: #fff !important; color: #1e62a7 !important; font-size: .78rem !important; font-weight: 850 !important; }
.ruangaksi-manual-bank__copy:hover, .ruangaksi-manual-bank__copy:focus-visible { background: #eef6ff !important; color: #092c63 !important; }
.ruangaksi-manual-bank__copy-status { display: block; min-height: 1.2em; margin: .15rem 0 .6rem; color: #1e62a7; font-size: .74rem; font-weight: 750; }
.ruangaksi-manual-bank__volunteer-id { display: grid; gap: .35rem; width: min(100%, 390px); margin: 1rem 0; padding: .9rem 1rem; border: 1px solid #b8d4f3; border-radius: 14px; background: #fff; }
.ruangaksi-manual-bank__volunteer-id label { color: #1e62a7; font-size: .72rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.ruangaksi-manual-bank__volunteer-id input { width: 100%; min-height: 42px; padding: .55rem .7rem; border: 1px dashed #8aaddb; border-radius: 9px; background: #eef6ff; color: #092c63; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 1rem; font-weight: 900; letter-spacing: .045em; }
.ruangaksi-manual-bank__volunteer-id small { color: #65738b; font-size: .74rem; line-height: 1.4; }
.ruangaksi-manual-bank__total { color: #092c63 !important; font-size: 1rem !important; font-weight: 850; }
.ruangaksi-manual-bank__instructions { margin-top: .65rem !important; color: #49658d !important; font-size: .83rem !important; }
@media (max-width: 520px) { .ruangaksi-manual-bank { grid-template-columns: 1fr; padding: 1.2rem; }.ruangaksi-manual-bank__account { width: 100%; } }

/* Keep the completed ticket page focused on payment, order details, and participant data. */
.ruangaksi-activity-order-received .woocommerce-thankyou-order-received, .ruangaksi-activity-order-received .woocommerce-order-overview, .ruangaksi-activity-order-received .woocommerce-customer-details, .ruangaksi-activity-order-received .woocommerce-order-details__title { display: none; }
.ruangaksi-activity-order-received .woocommerce-order-details { max-width: 920px; margin: 1.5rem auto; padding: 1.2rem; border: 1px solid #d9e5f4; border-radius: 18px; background: #fff; }
.ruangaksi-activity-order-received .woocommerce-order-details::before { content: 'Rincian pesanan'; display: block; margin: 0 0 .85rem; color: #092c63; font-family: sans-serif; font-size: 1.05rem; font-weight: 850; }
.ruangaksi-activity-order-received .woocommerce-table--order-details { margin: 0; }

/* Public History uses a familiar web typeface and reveals only ticket activity. */
.ruangaksi-volunteer-history,
.ruangaksi-volunteer-history input,
.ruangaksi-volunteer-history button {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.ruangaksi-volunteer-history {
  width: min(100% - 36px, 720px);
  margin: clamp(2.5rem, 7vw, 5.5rem) auto;
  padding: clamp(1.4rem, 4vw, 2.35rem);
  border: 1px solid #d7e9de;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(12, 68, 38, .10);
}
.ruangaksi-volunteer-history__intro {
  max-width: 560px;
}
.ruangaksi-volunteer-history h1 {
  margin: 0;
  color: #1f3d2c;
  font-family: inherit;
  font-size: clamp(1.95rem, 5vw, 3rem);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1.08;
}
.ruangaksi-volunteer-history__intro > p:last-child {
  margin: .8rem 0 0;
  color: #65786e;
  font-size: .92rem;
  line-height: 1.62;
}
.ruangaksi-volunteer-history__form {
  margin-top: 1.65rem;
  padding: 1rem;
  border: 1px solid #d9ece0;
  border-radius: 16px;
  background: #f7fcf8;
}
.ruangaksi-volunteer-history__form > label {
  display: block;
  margin-bottom: .45rem;
  color: #2b503d;
  font-size: .82rem;
  font-weight: 800;
}
.ruangaksi-volunteer-history__form > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .65rem;
}
.ruangaksi-volunteer-history__form input {
  width: 100%;
  min-height: 47px;
  padding: .65rem .8rem;
  border: 1px solid #b9dbc7;
  border-radius: 10px;
  background: #fff;
  color: #1f442f;
  font-size: .9rem;
  font-weight: 750;
  letter-spacing: .025em;
  outline: 0;
  text-transform: uppercase;
}
.ruangaksi-volunteer-history__form input:focus {
  border-color: #079650;
  box-shadow: 0 0 0 3px rgba(7, 150, 80, .13);
}
.ruangaksi-volunteer-history__form .button {
  min-height: 47px;
  border-color: #079650 !important;
  border-radius: 10px;
  background: #079650 !important;
  color: #fff !important;
  font-size: .82rem;
  white-space: nowrap;
}
.ruangaksi-volunteer-history__notice,
.ruangaksi-volunteer-history__empty {
  margin: 1rem 0 0;
  padding: .85rem 1rem;
  border: 1px solid #efc3b7;
  border-radius: 12px;
  background: #fff5f1;
  color: #a2442c;
  font-size: .84rem;
}
.ruangaksi-volunteer-history__results {
  margin-top: 1.4rem;
}
.ruangaksi-volunteer-history__summary {
  margin: 0 0 .7rem;
  color: #2d563f;
  font-size: .82rem;
  font-weight: 800;
}
.ruangaksi-volunteer-history__list {
  display: grid;
  gap: .65rem;
}
.ruangaksi-volunteer-history__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .95rem 1rem;
  border: 1px solid #e1ece5;
  border-radius: 14px;
  background: #fff;
}
.ruangaksi-volunteer-history__item > div {
  min-width: 0;
}
.ruangaksi-volunteer-history__meta {
  margin: 0 0 .28rem;
  color: #6e7f75;
  font-size: .71rem;
  line-height: 1.35;
}
.ruangaksi-volunteer-history__item h2 {
  overflow: hidden;
  margin: 0;
  color: #254332;
  font-family: inherit;
  font-size: .95rem;
  font-weight: 800;
  letter-spacing: -.018em;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ruangaksi-volunteer-history__item h2 a {
  color: inherit;
  text-decoration: none;
}
.ruangaksi-volunteer-history__item h2 a:hover {
  color: #078b4a;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ruangaksi-volunteer-history__status {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 28px;
  padding: .35rem .58rem;
  border-radius: 999px;
  background: #eff4f1;
  color: #5d7064;
  font-size: .68rem;
  font-weight: 800;
  text-align: center;
}
.ruangaksi-volunteer-history__status.is-completed,
.ruangaksi-volunteer-history__status.is-processing {
  background: #e6f8ec;
  color: #087f43;
}
.ruangaksi-volunteer-history__status.is-pending,
.ruangaksi-volunteer-history__status.is-on-hold {
  background: #fff6df;
  color: #9c6a07;
}
.ruangaksi-volunteer-history__status.is-cancelled,
.ruangaksi-volunteer-history__status.is-failed,
.ruangaksi-volunteer-history__status.is-refunded {
  background: #fff0ef;
  color: #b9504d;
}
@media (max-width: 560px) {
  .ruangaksi-volunteer-history {
    width: min(100% - 28px, 720px);
    padding: 1.25rem;
    border-radius: 19px;
  }
  .ruangaksi-volunteer-history__form > div {
    grid-template-columns: 1fr;
  }
  .ruangaksi-volunteer-history__form .button {
    width: 100%;
  }
  .ruangaksi-volunteer-history__item {
    align-items: flex-start;
    flex-direction: column;
    gap: .65rem;
  }
}
/* Optional merchandise remains part of the same focused ticket checkout. */
.ruangaksi-checkout-merchandise{margin:22px 0;padding:18px;border:1px solid #dfe8e5;border-radius:18px;background:#f8fcfa}.ruangaksi-checkout-merchandise h3{margin:0 0 5px;color:#103b34;font-size:18px}.ruangaksi-checkout-merchandise>p{margin:0 0 14px;color:#61736e;font-size:13px}.ruangaksi-checkout-merchandise__list{display:grid;gap:10px}.ruangaksi-checkout-merchandise__item{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #d9e6e1;border-radius:14px;background:#fff;cursor:pointer}.ruangaksi-checkout-merchandise__item input{width:18px;height:18px;accent-color:#05a956}.ruangaksi-checkout-merchandise__image img{display:block;width:52px;height:52px;object-fit:cover;border-radius:10px}.ruangaksi-checkout-merchandise__copy{display:grid;gap:2px;flex:1;color:#153e36}.ruangaksi-checkout-merchandise__copy small{color:#71817b;font-size:12px}.ruangaksi-checkout-merchandise__copy b{color:#05a956;font-size:13px}.ruangaksi-id-card-photo{display:grid;gap:7px;margin-top:14px;padding-top:14px;border-top:1px solid #dfe8e5}.ruangaksi-id-card-photo label{display:grid;gap:3px;color:#153e36}.ruangaksi-id-card-photo small,.ruangaksi-id-card-photo__status{color:#6e807a;font-size:12px}.ruangaksi-id-card-photo input[type=file]{max-width:100%;font-size:13px}

/* Checkout and payment details use the same friendly, logo-led system. */
.ruangaksi-activity-checkout,.ruangaksi-activity-checkout .woocommerce,.ruangaksi-activity-order-received{font-family:"Nunito Sans","Avenir Next",ui-rounded,system-ui,sans-serif}.ruangaksi-activity-checkout .woocommerce-checkout{display:grid;gap:18px}.ruangaksi-activity-checkout .woocommerce-billing-fields,.ruangaksi-activity-checkout #order_review{padding:20px;border:1px solid #d7e8ee;border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(8,45,99,.07)}.ruangaksi-activity-checkout .woocommerce-billing-fields h3,.ruangaksi-activity-checkout #order_review_heading{color:#082d63;font-family:inherit;font-size:1.2rem;font-weight:850;letter-spacing:-.025em}.ruangaksi-activity-checkout .form-row label{color:#31536f;font-weight:800}.ruangaksi-activity-checkout input.input-text,.ruangaksi-activity-checkout select{min-height:47px;border:1px solid #cddfe8;border-radius:11px;background:#fbfeff;color:#082d63;box-shadow:none}.ruangaksi-activity-checkout input.input-text:focus,.ruangaksi-activity-checkout select:focus{border-color:#049bd2;box-shadow:0 0 0 3px rgba(4,155,210,.13)}.ruangaksi-activity-checkout .woocommerce-checkout-review-order-table{border:0;border-collapse:separate;border-spacing:0}.ruangaksi-activity-checkout .woocommerce-checkout-review-order-table th,.ruangaksi-activity-checkout .woocommerce-checkout-review-order-table td{border-color:#e2edf2;padding:.8rem .25rem;color:#31536f}.ruangaksi-activity-checkout .woocommerce-checkout-review-order-table .order-total th,.ruangaksi-activity-checkout .woocommerce-checkout-review-order-table .order-total td{color:#082d63;font-size:1.05rem;font-weight:900}.ruangaksi-activity-checkout #payment{border:1px solid #d8e8ee;border-radius:15px;background:#f6fbfd}.ruangaksi-activity-checkout #payment div.payment_box{border-radius:12px;background:#e7f6fb;color:#31536f}.ruangaksi-activity-checkout #payment div.payment_box::before{border-bottom-color:#e7f6fb}.ruangaksi-activity-checkout #payment #place_order{min-height:51px;border:0;border-radius:12px;background:#082d63!important;color:#fff!important;font-family:inherit;font-size:.95rem;font-weight:900;letter-spacing:.01em}.ruangaksi-activity-checkout #payment #place_order:hover{background:#049bd2!important}.ruangaksi-checkout-merchandise{margin:18px 0;padding:17px;border-color:#d6e8ee;border-radius:16px;background:#f7fcfe}.ruangaksi-checkout-merchandise h3,.ruangaksi-checkout-merchandise__copy{color:#082d63}.ruangaksi-checkout-merchandise__item{border-color:#d7e8ee;border-radius:13px}.ruangaksi-checkout-merchandise__item:has(input:checked){border-color:#049bd2;background:#edfaff;box-shadow:0 4px 12px rgba(4,155,210,.10)}.ruangaksi-checkout-merchandise__item input{accent-color:#049bd2}.ruangaksi-checkout-merchandise__copy b{color:#007fae}.ruangaksi-id-card-photo{border-top-color:#d6e8ee}.ruangaksi-manual-bank,.ruangaksi-tripay-payment{grid-template-columns:auto minmax(0,1fr);border-color:#d7e8ee;border-radius:20px;background:linear-gradient(135deg,#f7fcfe,#eef8fc);color:#082d63;box-shadow:0 12px 30px rgba(8,45,99,.08)}.ruangaksi-manual-bank__icon,.ruangaksi-tripay-payment__icon{background:#082d63}.ruangaksi-manual-bank h2,.ruangaksi-tripay-payment h2{font-family:inherit;color:#082d63;font-weight:900;letter-spacing:-.03em}.ruangaksi-manual-bank__account{border:1px solid #0d4788;background:#082d63;box-shadow:0 8px 18px rgba(8,45,99,.16)}.ruangaksi-manual-bank__copy,.ruangaksi-tripay-payment__button{border-radius:11px!important;font-family:inherit}.ruangaksi-tripay-payment__button{border-color:#082d63!important;background:#082d63!important}.ruangaksi-tripay-payment__button:hover{background:#049bd2!important;border-color:#049bd2!important}@media(max-width:560px){.ruangaksi-activity-checkout .woocommerce-billing-fields,.ruangaksi-activity-checkout #order_review{padding:15px;border-radius:16px}.ruangaksi-manual-bank,.ruangaksi-tripay-payment{grid-template-columns:1fr;padding:1.15rem;border-radius:17px}}
