/* Standalone shortcode styles. Scoped so theme and other GamiPress views are unaffected. */
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,400,0,0');
@keyframes scffPop{0%{opacity:0;transform:scale(.2) rotate(-30deg)}55%{opacity:1;transform:scale(1.15) rotate(6deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@keyframes scffRing{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(2)}}@keyframes scffUp{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}[x-cloak]{display:none!important}.scff-transition-up{transition:opacity .2s ease-out,transform .2s ease-out}.scff-transition-up-start{opacity:0;transform:translateY(10px)}.scff-transition-up-end{opacity:1;transform:translateY(0)}
.scff-member-badges,.scff-badge-holders,.scff-award-form{--scff-navy:#0e3f52;--scff-orange:#f7922f;--scff-cream:#f5f8fa;--scff-ink:#26343d;--scff-muted:#6b7680;--scff-line:#dbe3e8;box-sizing:border-box;color:var(--scff-ink);font-family:Poppins,Arial,sans-serif}.scff-member-badges *,.scff-badge-holders *,.scff-award-form *{box-sizing:border-box}.scff-symbol{font-family:'Material Symbols Outlined','Material Symbols Rounded',sans-serif;font-style:normal;font-weight:normal;line-height:1;vertical-align:middle}.scff-screen-reader-text{clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;width:1px;word-wrap:normal}
.scff-badge-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(136px,1fr))}.scff-badge-tile{background:#fff;border:1px solid var(--scff-line);border-radius:16px;color:var(--scff-ink);cursor:pointer;min-height:171px;padding:14px 8px 13px;text-align:center;transition:transform .16s,box-shadow .16s,border-color .16s}.scff-badge-tile:hover,.scff-badge-tile:focus-visible{border-color:var(--scff-orange);box-shadow:0 7px 18px rgba(14,63,82,.12);outline:0;transform:translateY(-2px)}.scff-badge-tile.is-selected{background:#fffaf4;border:2px solid var(--scff-orange);padding:13px 7px 12px}.scff-badge-tile-image{display:block;margin:0 auto 7px;position:relative;width:104px}.scff-badge-tile-image img{display:block;height:104px;object-fit:contain;width:104px}.scff-badge-tile-image b{background:var(--scff-orange);border:2px solid #fff;border-radius:999px;color:#fff;font-size:.72rem;padding:3px 6px;position:absolute;right:-1px;top:-2px}.scff-badge-tile strong{display:block;font-size:.78rem;line-height:1.25}.scff-badge-details{margin-top:20px}.scff-badge-detail{background:var(--scff-navy);border-radius:18px;color:#fff;overflow:hidden;padding:27px}.scff-badge-detail-main{align-items:center;display:flex;gap:25px}.scff-badge-detail-image{flex:0 0 145px;height:145px;object-fit:contain;width:145px}.scff-badge-detail-copy h3{color:#fff;font-size:1.7rem;letter-spacing:-.04em;margin:4px 0 10px}.scff-badge-detail .scff-eyebrow{color:#f7b266}.scff-badge-chip-row{display:flex;flex-wrap:wrap;gap:6px}.scff-badge-chip{align-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.23);border-radius:99px;color:#fff;display:inline-flex;font-size:.72rem;gap:3px;padding:4px 8px}.scff-badge-chip .scff-symbol{font-size:13px}.scff-badge-chip--orange{background:var(--scff-orange);border:0}.scff-badge-description{color:rgba(255,255,255,.86);font-size:.9rem;line-height:1.55;margin-top:13px}.scff-badge-description p{margin:0}.scff-badge-history{border-top:1px solid rgba(255,255,255,.18);margin-top:22px;padding-top:15px}.scff-badge-history h4{font-size:.78rem;letter-spacing:.05em;margin:0 0 10px;text-transform:uppercase}.scff-badge-history h4 .scff-symbol{color:#f7b266;font-size:16px;margin-right:5px}.scff-badge-awards{list-style:none;margin:0;padding:0}.scff-badge-awards li{align-items:flex-start;display:flex;gap:8px;padding:6px 0}.scff-award-dot{background:var(--scff-orange);border-radius:50%;display:block;flex:0 0 7px;height:7px;margin-top:7px}.scff-badge-awards time{display:block;font-size:.82rem;font-weight:700}.scff-badge-award-comment{color:inherit;display:block;font-size:.84rem;opacity:.8}.scff-badges-empty{background:var(--scff-cream);border:1px dashed #b8c4cc;border-radius:16px;padding:42px 24px;text-align:center}.scff-badges-empty .scff-symbol{background:#fff0df;border-radius:50%;color:var(--scff-orange);font-size:30px;padding:13px}.scff-badges-empty h3{color:var(--scff-navy);margin:15px 0 5px}.scff-badges-empty p{color:var(--scff-muted);font-size:.9rem;margin:0}
.scff-award-form{background:var(--scff-cream);border:1px solid var(--scff-line);border-radius:18px;max-width:760px;padding:25px}.scff-award-sentence{align-items:center;background:var(--scff-navy);border-radius:13px;color:#fff;display:flex;flex-wrap:wrap;font-size:1.08rem;gap:7px;margin-bottom:24px;padding:16px 18px}.scff-award-sentence strong{color:#f7b266;font-weight:800}.scff-field{margin:0 0 19px;position:relative}.scff-field label{color:var(--scff-navy);display:block;font-size:.86rem;font-weight:800;margin-bottom:7px}.scff-step-number{align-items:center;background:var(--scff-orange);border-radius:50%;color:#fff;display:inline-flex;font-size:.7rem;height:18px;justify-content:center;margin-right:5px;width:18px}.scff-field input,.scff-field select,.scff-field textarea{background:#fff;border:1px solid #b8c4cc;border-radius:9px;color:var(--scff-ink);font:inherit;max-width:100%;padding:10px 11px;width:100%}.scff-field textarea{resize:vertical}.scff-field-row{display:flex;flex-wrap:wrap;gap:16px}.scff-field-row .scff-field{flex:1 1 200px}.scff-filter-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.scff-filter-chips button{background:#fff;border:1px solid #b8c4cc;border-radius:999px;color:var(--scff-navy);cursor:pointer;font:700 .76rem inherit;padding:6px 10px}.scff-filter-chips button.is-selected{background:var(--scff-navy);border-color:var(--scff-navy);color:#fff}.scff-award-form [data-scff-badge-select]{display:none}.scff-badge-picker{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));max-height:280px;overflow:auto;padding:2px}.scff-badge-picker button{align-items:center;background:#fff;border:1px solid var(--scff-line);border-radius:10px;color:var(--scff-ink);cursor:pointer;display:flex;font:700 .78rem/1.2 inherit;gap:7px;min-height:55px;padding:7px;text-align:left}.scff-badge-picker button:hover,.scff-badge-picker button.is-selected{border-color:var(--scff-orange);box-shadow:0 2px 8px rgba(14,63,82,.1)}.scff-badge-picker img{height:39px;object-fit:contain;width:39px}.scff-badge-preview{align-items:center;background:#fff;border-radius:10px;display:flex;gap:9px;margin-top:10px;padding:8px}.scff-badge-preview img{height:48px;object-fit:contain;width:48px}.scff-badge-preview[hidden]{display:none}.scff-member-results{background:#fff;border-radius:9px;box-shadow:0 8px 20px rgba(14,63,82,.14);left:0;position:absolute;right:0;top:100%;z-index:4}.scff-member-results button{background:#fff;border:0;border-bottom:1px solid var(--scff-line);cursor:pointer;display:block;font:inherit;padding:10px;text-align:left;width:100%}.scff-member-results button:hover{background:#fffaf4}.scff-award-form .button{align-items:center;background:var(--scff-orange);border:0;border-radius:10px;box-shadow:none;color:#fff;display:inline-flex;font:800 .9rem inherit;gap:6px;padding:11px 17px;text-shadow:none}.scff-award-form .button:hover{background:#df7d20}.scff-form-message{font-weight:700;margin:12px 0 0}.scff-form-message.is-success{color:#13743b}.scff-form-message.is-error{color:#b52727}.scff-checkbox{align-self:end;color:var(--scff-muted);font-size:.82rem;margin-bottom:20px}
.scff-award-success{align-items:center;background:var(--scff-navy);border-radius:20px;color:#fff;display:flex;flex-direction:column;max-width:760px;padding:36px 20px 28px;text-align:center}.scff-award-success-art{height:180px;position:relative;width:180px}.scff-award-success-art span{border:4px solid var(--scff-orange);border-radius:50%;inset:20px;position:absolute;animation:scffRing 1s ease-out .3s both}.scff-award-success-art img{height:180px;object-fit:contain;position:relative;width:180px;animation:scffPop .45s ease-out both}.scff-award-success h3{font-size:26px;margin:12px 0 4px}.scff-award-success p{color:#d5e2e8;margin:0}.scff-award-success button{background:var(--scff-orange);border:0;border-radius:999px;color:var(--scff-navy);cursor:pointer;font:600 1rem inherit;margin-top:18px;min-height:50px;padding:0 30px}
.scff-holder-filters{background:var(--scff-cream);border:1px solid var(--scff-line);border-radius:16px;margin-bottom:22px;padding:18px}.scff-holder-filters>.scff-field-row{margin-top:14px}.scff-holder-filters>.button{background:var(--scff-navy);border:0;border-radius:8px;color:#fff;cursor:pointer;font:700 .82rem inherit;padding:9px 13px}.scff-holder-badge-picker{display:flex;flex-wrap:wrap;gap:7px;max-height:216px;overflow:auto;padding:2px}.scff-holder-badge-picker button{align-items:center;background:#fff;border:1px solid var(--scff-line);border-radius:8px;color:var(--scff-ink);cursor:pointer;display:flex;font:700 .74rem inherit;gap:5px;padding:5px 7px}.scff-holder-badge-picker button.is-selected{border-color:var(--scff-orange);box-shadow:inset 0 0 0 1px var(--scff-orange)}.scff-holder-badge-picker img{height:28px;object-fit:contain;width:28px}.scff-holder-list{border-top:1px solid var(--scff-line)}.scff-holder{border-bottom:1px solid var(--scff-line);padding:0}.scff-holder summary{align-items:center;cursor:pointer;display:flex;gap:10px;list-style:none;padding:13px 4px}.scff-holder summary::-webkit-details-marker{display:none}.scff-holder summary b{background:#fff0df;border-radius:999px;color:#be5e09;font-size:.75rem;margin-left:auto;padding:3px 7px}.scff-holder summary>.scff-symbol{color:var(--scff-muted);font-size:20px}.scff-holder[open] summary>.scff-symbol{transform:rotate(180deg)}.scff-holder-avatar{align-items:center;background:var(--scff-navy);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:800;height:31px;justify-content:center;width:31px}.scff-holder .scff-badge-awards{background:var(--scff-cream);border-radius:8px;margin:0 4px 13px;padding:8px 11px}.scff-holder .scff-badge-awards li{display:block;padding:5px}.scff-holder .scff-badge-awards time{color:var(--scff-navy)}.scff-award-admin{margin-top:6px}.scff-award-admin form{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.scff-award-admin input{max-width:130px}
@media (max-width:600px){.scff-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scff-badge-detail{padding:20px}.scff-badge-detail-main{align-items:flex-start;gap:14px}.scff-badge-detail-image{flex-basis:90px;height:90px;width:90px}.scff-badge-detail-copy h3{font-size:1.3rem}.scff-award-form{padding:17px}.scff-badge-picker{grid-template-columns:1fr 1fr}.scff-award-sentence{font-size:.96rem}}

/* ---------- [scff_badges_dashboard]: Option B mockup ----------
 * Visual styling lives inline in templates/badges-dashboard.php, copied from the mockup.
 * These rules only neutralise theme (Divi / block theme) styles and supply keyframes. */
@keyframes scffToast{0%{opacity:0;transform:translate(-50%,10px)}100%{opacity:1;transform:translate(-50%,0)}}
/* Themes such as Divi set overflow on these wrappers, which disables position:sticky; clip does not. */
body:has(#scff-app),body:has(#scff-app) #page-container,body:has(#scff-app) #et-main-area,body:has(#scff-app) #main-content{overflow-x:clip!important;overflow-y:visible!important}
#scff-app.scff-app{background:#FFFFFF;box-sizing:border-box;color:#4B5560;font-family:'Poppins',sans-serif;font-size:16px;font-weight:400;-webkit-font-smoothing:antialiased;line-height:1.5;margin:0 calc(50% - 50vw)!important;max-width:100vw!important;min-height:100vh;padding:0!important;position:relative;text-align:left;width:100vw!important}
#scff-app.scff-app div,#scff-app.scff-app span,#scff-app.scff-app section,#scff-app.scff-app label,#scff-app.scff-app img,#scff-app.scff-app input,#scff-app.scff-app textarea,#scff-app.scff-app h1,#scff-app.scff-app h2{box-sizing:content-box}
#scff-app.scff-app h1,#scff-app.scff-app h2{border:0;font-family:'Poppins',sans-serif;letter-spacing:normal;padding:0;text-transform:none}
#scff-app.scff-app button,#scff-app.scff-app input,#scff-app.scff-app select,#scff-app.scff-app textarea{box-shadow:none;font-family:'Poppins',sans-serif;letter-spacing:normal;line-height:normal;margin:0;max-width:100%;text-shadow:none;text-transform:none}
#scff-app.scff-app button,#scff-app.scff-app select{box-sizing:border-box}
#scff-app.scff-app :focus:not(:focus-visible){outline:none}
#scff-app.scff-app button:focus-visible,#scff-app.scff-app input:focus-visible,#scff-app.scff-app select:focus-visible,#scff-app.scff-app textarea:focus-visible{outline:2px solid #F7922F;outline-offset:2px}
#scff-app.scff-app img{border:0;border-radius:0;box-shadow:none;max-width:none}
#scff-app.scff-app .scff-result{background:#FFFFFF}#scff-app.scff-app .scff-result:hover{background:#F5F8FA}
#scff-app .scff-sym,.scff-site-badges .scff-sym{direction:ltr;display:inline-block;font-family:'Material Symbols Rounded';font-feature-settings:'liga';font-style:normal;font-weight:normal;-webkit-font-smoothing:antialiased;letter-spacing:normal;line-height:1;text-transform:none;white-space:nowrap;word-wrap:normal}
/* Divi prints the page title beneath its overlay header; the dashboard hero already shows it. Keep the spacing, hide the text. */
body:has(#scff-app) h1.entry-title.main_title{visibility:hidden}
/* Divi's transparent overlay header expects a dark hero behind it: paint the strip above the dashboard navy so it reads as the mockup's header bar. */
body:has(#scff-app) #main-content{background-color:#0E3F52}
body:has(#scff-app) #main-content .container:before{display:none}
/* [scff_site_badges] */
.scff-site-badges,.scff-site-badges *{box-sizing:content-box}
.scff-site-badges h2{border:0;font-family:'Poppins',sans-serif;letter-spacing:normal;padding:0;text-transform:none}
.scff-site-badges img{border:0;border-radius:0;box-shadow:none;max-width:none}
