.vlc-form-wrap{max-width:680px;margin:28px auto;padding:28px;border:1px solid #e7e7e7;border-radius:14px;background:#fff;color:#222;box-sizing:border-box}.vlc-form-wrap h2{color:#bd2030;margin:0 0 24px}.vlc-form-wrap label{display:block;font-weight:600;margin:16px 0 6px}.vlc-form-wrap input:not([type=checkbox]),.vlc-form-wrap select,.vlc-form-wrap textarea{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #cbd0d5;border-radius:7px;font:inherit;background:#fff;color:#222}.vlc-form-wrap input:focus,.vlc-form-wrap select:focus,.vlc-form-wrap textarea:focus{outline:2px solid #bd2030;outline-offset:1px}.vlc-form-wrap .vlc-consent{display:flex;gap:10px;align-items:flex-start;font-weight:400}.vlc-form-wrap .vlc-consent input{margin-top:6px}.vlc-form-wrap button{background:#bd2030;color:#fff;border:0;border-radius:7px;padding:13px 20px;font-weight:700;cursor:pointer}.vlc-form-wrap button:hover{background:#941825}.vlc-success{padding:12px;background:#e8f6ed;color:#155e2c}.vlc-error{padding:12px;background:#fff0f0;color:#9a1420}

/* Tombol ketika persetujuan belum dicentang */
.vlc-form-wrap button:disabled {
    background-color: #aaaaaa;
    color: #ffffff;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Tombol ketika persetujuan sudah dicentang */
.vlc-form-wrap button:not(:disabled) {
    background-color: #bd2030;
    color: #ffffff;
    cursor: pointer;
}

.vlc-form-wrap button:not(:disabled):hover {
    background-color: #941825;
}


.vlc-active{max-width:780px}.vlc-active h2{font-size:24px;line-height:1.3}.vlc-active h3{font-size:19px;margin:0 0 15px;color:#bd2030}.vlc-active .vlc-section{border-top:1px solid #eee;padding:24px 0}.vlc-active .vlc-section p{line-height:1.65}.vlc-active .vlc-division-info{margin:18px 0}.vlc-active .vlc-division-info p{margin:8px 0}.vlc-active .vlc-required{color:#bd2030}.vlc-active .vlc-radio{border:0;padding:0;margin:22px 0}.vlc-active .vlc-radio legend{font-weight:600;margin-bottom:10px}.vlc-active .vlc-radio label{display:flex;align-items:center;gap:10px;font-weight:400;margin:9px 0}.vlc-active input[type=file]{width:100%;margin:8px 0 15px}.vlc-active .vlc-consent{margin:18px 0}.vlc-active button:disabled{background:#aaa;opacity:.7;cursor:not-allowed}.vlc-active button:not(:disabled){background:#bd2030}

/* v1.0.3: prevent radio inputs from inheriting full-width text input styling */
.vlc-form-wrap.vlc-active .vlc-radio label { display:flex !important; flex-direction:row !important; justify-content:flex-start !important; align-items:center !important; gap:12px !important; width:100% !important; max-width:100% !important; text-align:left !important; box-sizing:border-box; white-space:normal; padding:7px 4px; }
.vlc-form-wrap.vlc-active .vlc-radio input[type="radio"] { display:inline-block !important; width:18px !important; min-width:18px !important; max-width:18px !important; height:18px !important; min-height:18px !important; padding:0 !important; margin:0 !important; flex:0 0 18px !important; vertical-align:middle; accent-color:#bd2030; box-sizing:border-box; }
.vlc-form-wrap.vlc-active .vlc-radio { min-width:0; width:100%; }

.vlc-public-events{max-width:900px;margin:30px auto;font-family:inherit}.vlc-event-card{background:#fff;border:1px solid #e6e6e6;border-radius:14px;padding:24px;margin:18px 0;box-shadow:0 5px 22px #00000008}.vlc-event-card h3{color:#d71928;margin-top:0}.vlc-event-card form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vlc-event-card label{display:flex;flex-direction:column;gap:6px}.vlc-event-card input{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px}.vlc-event-card button{background:#d71928;color:white;border:0;border-radius:8px;padding:12px 20px;cursor:pointer}.vlc-event-card button:hover{background:#a8101c}@media(max-width:650px){.vlc-event-card form{grid-template-columns:1fr}}

/* v1.1.1: Voluncare public event dashboard */
.vlc-events-app,.vlc-events-app *{box-sizing:border-box}
.vlc-events-app{--vlc-red:#d21d2b;display:grid;grid-template-columns:210px minmax(0,1fr);max-width:1250px;min-height:650px;margin:35px auto;background:#f5f6f9;border:1px solid #eceef2;border-radius:16px;overflow:hidden;color:#151820;font-family:Inter,Arial,sans-serif;box-shadow:0 10px 35px rgba(0,0,0,.045)}
.vlc-events-sidebar{background:#171717;color:#fff;padding:27px 18px;display:flex;flex-direction:column;gap:18px}
.vlc-events-brand{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:900;letter-spacing:-.5px}
.vlc-events-brand img{width:30px;height:30px;object-fit:contain}
.vlc-events-nav-label{font-size:10px;letter-spacing:1.7px;color:#b4b8c2;margin-top:34px}
.vlc-events-nav-active{display:flex;align-items:center;gap:10px;padding:13px 12px;border-radius:8px;background:#d21d2b;color:#fff;font-size:13px;font-weight:700}
.vlc-events-nav-icon{font-size:18px}
.vlc-events-side-bottom{margin-top:auto;border-top:1px solid #363636;padding-top:18px;color:#b8b8b8;font-size:11px;line-height:1.8}
.vlc-events-side-bottom strong{color:#fff}
.vlc-events-content{padding:40px 42px 25px;min-width:0}
.vlc-events-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#c81929}
.vlc-events-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0 28px}
.vlc-events-heading h2{font-size:29px;line-height:1.2;font-weight:800;color:#111;margin:0 0 7px}
.vlc-events-heading p,.vlc-events-section-title p{margin:0;color:#6c7280;font-size:13px}
.vlc-events-heading-pill{border:1px solid #e6d6d8;color:#b61929;background:#fff7f8;border-radius:100px;padding:8px 13px;font-size:11px;font-weight:700;white-space:nowrap}
.vlc-events-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:30px}
.vlc-events-stat{background:#fff;border:1px solid #e8eaf0;border-radius:12px;padding:20px;display:flex;gap:16px;align-items:center;min-height:100px}
.vlc-events-stat-red{background:linear-gradient(120deg,#bc1423,#ed2a38);border-color:transparent;color:#fff}
.vlc-events-stat-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:10px;background:#ffeded;color:#d21d2b;font-size:23px}
.vlc-events-stat-red .vlc-events-stat-icon{background:#ffffff24;color:#fff}
.vlc-events-stat strong{display:block;font-size:29px;font-weight:800;line-height:1.1}
.vlc-events-stat small{display:block;margin-top:7px;color:#6c7280;font-size:12px}
.vlc-events-stat-red small{color:#fff}
.vlc-events-section-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px}
.vlc-events-section-title h3{margin:0 0 5px;font-size:19px;color:#171717;font-weight:800}
.vlc-events-section-title>span{background:#fff;border:1px solid #e7e9ef;padding:7px 12px;border-radius:7px;font-size:11px;color:#666}
.vlc-events-card{background:#fff;border:1px solid #e7e9ef;border-radius:13px;padding:26px;margin:0 0 16px;box-shadow:0 3px 12px #00000005}
.vlc-events-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}
.vlc-events-category{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#d21d2b}
.vlc-events-open{font-size:11px;color:#168046;background:#e8f8ee;border-radius:20px;padding:7px 10px}
.vlc-events-card h3{font-size:21px;color:#141414;font-weight:800;margin:0 0 10px}
.vlc-events-description{font-size:13px;color:#69707b;line-height:1.7;margin:0 0 20px}
.vlc-events-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4;padding:17px 0;margin-bottom:20px}
.vlc-events-meta>div{display:flex;align-items:flex-start;gap:9px;min-width:0}
.vlc-events-meta-icon{display:grid;place-items:center;background:#fff0f1;color:#d21d2b;width:32px;height:32px;border-radius:8px;flex:none;font-size:18px}
.vlc-events-meta small{display:block;font-size:10px;color:#8b8f99;margin-bottom:5px}
.vlc-events-meta strong{display:block;font-size:12px;line-height:1.5;color:#20242d;overflow-wrap:anywhere}
.vlc-events-register>summary{display:flex;justify-content:center;align-items:center;gap:15px;background:#d21d2b;color:#fff;border-radius:8px;padding:13px 18px;cursor:pointer;font-size:13px;font-weight:800;list-style:none}
.vlc-events-register>summary::-webkit-details-marker{display:none}
.vlc-events-register[open]>summary{background:#a71320}
.vlc-events-form-content{margin-top:18px;padding:20px;border:1px solid #f0d9dc;background:#fffafa;border-radius:10px}
.vlc-events-form-content>p{font-size:12px;color:#555}
.vlc-events-form-content form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vlc-events-form-content label{font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:7px}
.vlc-events-form-content input{width:100%;padding:12px;border:1px solid #dce0e6;border-radius:7px;background:#fff;font-size:13px;color:#202020}
.vlc-events-form-content button{grid-column:1/-1;background:#d21d2b;color:#fff;border:0;border-radius:8px;padding:13px 18px;font-size:13px;font-weight:800;cursor:pointer}
.vlc-events-form-content button:hover{background:#ac1521}
.vlc-events-form-note{margin-bottom:0;font-size:11px}
.vlc-events-full{background:#fff0f1;color:#ad1825;border-radius:7px;padding:13px;text-align:center}
.vlc-events-empty{text-align:center;padding:55px 25px;background:#fff;border:1px solid #e7e9ef;border-radius:12px}
.vlc-events-empty-icon{font-size:40px;color:#d21d2b}
.vlc-events-empty h3{font-size:18px;margin:10px 0}
.vlc-events-empty p{font-size:13px;color:#6b7280;max-width:440px;margin:auto}
.vlc-events-alert{padding:15px;border-radius:9px;margin:0 0 20px;font-size:13px}
.vlc-events-alert-success{background:#e8f7ef;color:#16643c}
.vlc-events-alert-error{background:#fff0f0;color:#a91d2a}
.vlc-events-footer{text-align:center;color:#969ba6;font-size:10px;padding:30px 0 5px}
@media(max-width:850px){.vlc-events-app{grid-template-columns:1fr}.vlc-events-sidebar{padding:16px;flex-direction:row;align-items:center;justify-content:space-between}.vlc-events-nav-label,.vlc-events-side-bottom{display:none}.vlc-events-content{padding:25px 18px}.vlc-events-meta{grid-template-columns:1fr}.vlc-events-heading-pill{display:none}}
@media(max-width:550px){.vlc-events-stats,.vlc-events-form-content form{grid-template-columns:1fr}.vlc-events-heading h2{font-size:24px}.vlc-events-card{padding:18px}.vlc-events-content{padding:20px 12px}.vlc-events-app{margin:16px auto}}

.vlc-checkin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vlc-checkin-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.vlc-checkin-form input{padding:12px;border:1px solid #dce0e6;border-radius:7px;width:100%}.vlc-checkin-form button{grid-column:1/-1;background:#d21d2b;color:#fff;border:0;border-radius:8px;padding:13px;font-weight:700;cursor:pointer}@media(max-width:550px){.vlc-checkin-form{grid-template-columns:1fr}}
/* v1.5.1 standalone verification */
body.vlc-verification-page{margin:0!important;background:#f4f5f8!important;color:#171717;font-family:Arial,Helvetica,sans-serif;min-height:100vh}
.vlc-verification-shell{box-sizing:border-box;max-width:520px;margin:30px auto;background:#fff;border:1px solid #e7e7eb;border-radius:18px;overflow:hidden;box-shadow:0 14px 35px #0000000b}
.vlc-verification-brand{background:#fff;display:flex;flex-direction:column;align-items:center;padding:12px 20px 16px;color:#b60e21;letter-spacing:2px;font-size:10px;font-weight:700}
.vlc-verification-brand img{width:200px;height:110px;object-fit:contain}
.vlc-verification-brand span{color:#b60e21}
.vlc-verification-shell .vlc-verify{margin:0;padding:32px 20px 40px;box-shadow:none;border:0;max-width:none}
.vlc-verify-symbol{width:65px;height:65px;border-radius:50%;background:#e6f7ec;color:#11864d;display:grid;place-items:center;font-size:34px;font-weight:800;margin:20px auto 10px}
.vlc-verify-code{font-weight:800;color:#c9162a;font-size:17px;letter-spacing:1px}
.vlc-verify-caption{color:#707784;font-size:13px;margin-top:24px}
.vlc-verification-shell footer{background:#cf1528;color:white;text-align:center;padding:15px;font-size:12px}
@media(max-width:560px){.vlc-verification-shell{margin:12px;border-radius:13px}.vlc-verification-shell .vlc-verify{padding:24px 14px 35px}}

/* Member verification v1.5.5 */
.vlc-verification-shell .vlc-verify-member{text-align:center;padding:24px 28px 36px}
.vlc-verify-member .vlc-verify-head{font-size:17px;font-weight:800;color:#171717;letter-spacing:.4px;margin:4px 0 20px}
.vlc-verify-portrait{display:flex;justify-content:center;margin:0 auto 16px}
.vlc-verify-photo{width:140px;height:160px;object-fit:cover;object-position:center;border-radius:16px;border:3px solid #fff;box-shadow:0 0 0 1px #e9e9ee;background:#f8e8ea}
.vlc-verify-photo-fallback{display:grid;place-items:center;font-size:52px;font-weight:800;color:#d41528}
.vlc-verify-member-name{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
.vlc-verify-member-name h2{font-size:24px;font-weight:800;line-height:1.25;margin:0;color:#171717}
.vlc-verify-badge{display:inline-grid;place-items:center;background:#168bdf;color:white;width:25px;height:25px;border-radius:50%;font-size:17px;font-weight:900;box-shadow:0 0 0 3px #e5f4ff}
.vlc-verify-member .vlc-verify-code{margin:12px 0 18px;font-size:16px}
.vlc-verify-division{margin:0 auto 18px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.vlc-verify-division span{color:#747985;font-size:12px}
.vlc-verify-division strong{color:#171717;font-size:17px}
.vlc-verify-membership{display:inline-block;padding:8px 16px;border-radius:99px;background:#e5f7ed;color:#128047;font-size:14px}
.vlc-verify-membership.vlc-not-verified{background:#fff0f0;color:#ba2633}
.vlc-verify-member .vlc-verify-caption{margin-top:22px}
@media(max-width:560px){.vlc-verification-shell .vlc-verify-member{padding:20px 16px 32px}.vlc-verify-member-name h2{font-size:21px}}

/* Standalone, focused QR check-in screen */
body.vlc-checkin-standalone{margin:0!important;background:#f6f7f9;color:#151515;font-family:Arial,sans-serif}
.vlc-checkin-standalone .vlc-checkin-app{display:block;max-width:600px;min-height:0;margin:40px auto;padding:0;background:#fff;border:1px solid #e9e9ed;border-radius:16px;box-shadow:0 12px 35px rgba(0,0,0,.06);overflow:hidden}
.vlc-checkin-standalone .vlc-checkin-top{background:#151515;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px}
.vlc-checkin-standalone .vlc-checkin-top img{width:150px;max-height:54px;object-fit:contain;object-position:left center;background:#fff;border-radius:5px;padding:5px}
.vlc-checkin-standalone .vlc-checkin-top span{font-size:12px;font-weight:800;letter-spacing:.08em;color:#fff}
.vlc-checkin-standalone .vlc-events-content{padding:26px!important;background:#fff}
.vlc-checkin-standalone .vlc-events-card{padding:26px!important;border:1px solid #e5e5e8;border-radius:12px;background:#fff;box-shadow:none}
.vlc-checkin-standalone .vlc-events-card h3{font-size:23px;line-height:1.3;margin:0 0 10px;font-weight:800;color:#151515}
.vlc-checkin-standalone .vlc-events-description{font-size:14px;line-height:1.6;color:#60636b}
.vlc-checkin-standalone .vlc-events-alert{font-size:14px;line-height:1.5;border-radius:9px;padding:15px;margin-top:18px}
.vlc-checkin-standalone .vlc-checkin-form{margin-top:20px}
.vlc-checkin-standalone .vlc-checkin-form button{background:#df092b}
@media(max-width:650px){.vlc-checkin-standalone .vlc-checkin-app{margin:0;min-height:100vh;border:0;border-radius:0;box-shadow:none}.vlc-checkin-standalone .vlc-checkin-top{padding:16px 18px}.vlc-checkin-standalone .vlc-checkin-top img{width:130px}.vlc-checkin-standalone .vlc-events-content{padding:20px 16px!important}.vlc-checkin-standalone .vlc-events-card{padding:20px!important}.vlc-checkin-standalone .vlc-events-card h3{font-size:21px}}

/* Official Voluncare branding: transparent image, no white background. */
.vlc-checkin-standalone .vlc-checkin-top img{width:clamp(165px,30vw,270px);height:auto;max-height:70px;object-fit:contain;object-position:left center;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
.vlc-verification-brand img{width:min(300px,85%);height:auto;max-height:110px;object-fit:contain}
.vlc-events-brand img{width:155px;height:auto;max-height:48px;object-fit:contain}
@media(max-width:650px){.vlc-checkin-standalone .vlc-checkin-top{gap:10px;padding:16px}.vlc-checkin-standalone .vlc-checkin-top img{width:min(48vw,210px);max-height:58px}.vlc-checkin-standalone .vlc-checkin-top span{font-size:11px;letter-spacing:.035em;text-align:right}}
