/* Option Showcase Ultra — Frontend (v3.1.1) */
.osu-wrap{max-width:var(--osu-max);margin:0 auto;padding:16px 12px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.osu-wrap *{box-sizing:border-box}

/* Section header */
.osu-section{margin:0 0 16px 0}
.osu-head{display:flex;align-items:center;gap:14px;width:100%;padding:16px 18px;border:1px solid #e7e8ef;border-radius:14px;background:linear-gradient(180deg,#fff,#fafbff);box-shadow:0 6px 18px rgba(0,0,0,.06);cursor:pointer;transition:box-shadow .15s, transform .05s, border-color .15s}
.osu-head:hover{box-shadow:0 12px 28px rgba(0,0,0,.08);border-color:#d7d9e4}
.osu-head:active{transform:translateY(1px)}
.osu-title{margin:0;font-size:19px;font-weight:800;letter-spacing:.2px;color:#171a22}
.osu-badge{margin-left:auto;padding:4px 10px;border-radius:999px;background:#eef2ff;color:#3f4a8a;font-size:12px}
.osu-chevron{flex:0 0 auto;transition:transform .18s ease}
.osu-head[aria-expanded="true"]{border-color:#cfd3ff;background:linear-gradient(180deg,#f9faff,#f6f8ff)}
.osu-head[aria-expanded="true"] .osu-chevron{transform:rotate(180deg)}

.osu-intro{padding:10px 4px 0 4px;color:#5a6073}

/* Animated panel */
.osu-panel{overflow:hidden;transition:max-height .24s ease}
.osu-panel-inner{padding:14px 2px 2px 2px}

/* Grid */
.osu-grid{display:grid;gap:var(--osu-gap);grid-template-columns:repeat(var(--cols), minmax(0,1fr));align-items:start}
.osu-grid > *{min-width:0}

/* Card */
.osu-card{display:flex;flex-direction:column;background:#fff;border:1px solid #eceff4;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.04);transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease}
.osu-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.09);border-color:#e0e5f1}

/* Standard included styling */
.osu-card.is-standard{border-color:#e86a6a}
.osu-card.is-standard:hover{box-shadow:0 12px 26px rgba(232,106,106,.25)}
.osu-std-chip{
  position:absolute;top:8px;left:8px;
  background:rgba(232,106,106,.97);color:#fff;
  font-size:11px;line-height:1;padding:5px 8px;border-radius:999px;
  box-shadow:0 2px 8px rgba(0,0,0,.25);letter-spacing:.2px
}

.osu-media{position:relative;aspect-ratio:4/3;background:#f3f5f9;overflow:hidden}
.osu-media img{display:block;width:100%;height:100%;object-fit:cover;max-width:100%!important}
.osu-noimg{height:100%;display:flex;align-items:center;justify-content:center;color:#999;font-size:13px}
.osu-body{padding:12px 12px 14px 12px;min-width:0}
.osu-h{font-size:16px;font-weight:800;margin:0 0 6px;color:#151821;overflow-wrap:anywhere}
.osu-cap{font-size:13px;color:#636b77;margin:0;overflow-wrap:anywhere}

/* Modal */
.osu-open{position:absolute;inset:0;border:0;background:transparent;cursor:pointer}
.osu-modal{position:fixed;inset:0;background:rgba(0,0,0,.68);display:none;align-items:center;justify-content:center;padding:24px;z-index:999999}
.osu-modal.is-open{display:flex}
.osu-modal-inner{max-width:min(92vw, var(--osu-max));max-height:90vh;background:#111;border-radius:14px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.4);position:relative}
.osu-modal-media{background:#000;display:flex;align-items:center;justify-content:center}
.osu-modal-media img{max-width:100%;max-height:80vh;display:block}
.osu-modal-cap{color:#f0f0f0;padding:12px 14px;font-size:14px}
.osu-modal-close{position:absolute;top:10px;right:10px;background:#fff;border:0;border-radius:10px;padding:8px 10px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.25)}

/* Nuke common theme conflicts */
.osu-wrap img{height:auto;max-width:100%!important}
.osu-grid figure{margin:0}
.osu-empty{color:#666;margin:8px 0 16px}
