/* Minimal replacements for the Bootstrap utilities the legacy video tools used (Bootstrap itself is no longer loaded). */
*,::before,::after{box-sizing:border-box}
body{margin:0;font-family:'DM Sans',system-ui,sans-serif;line-height:1.5;color:#1f2933;background:transparent}
img,video{max-width:100%}
html body section.tool-wrapper{padding:12px 0 16px!important;margin:0!important;min-height:0!important}
.container{width:100%;max-width:1100px;margin:0 auto;padding:0 12px}
.row{display:flex;flex-wrap:wrap;margin:0 -8px}
.row>*{flex:0 0 100%;max-width:100%;padding:0 8px}
.g-2{row-gap:8px}.g-3{row-gap:16px}.g-4{row-gap:24px}
.col-6{flex:0 0 50%!important;max-width:50%!important}.col-12{flex:0 0 100%}
@media (min-width:768px){.col-md-3{flex:0 0 25%!important;max-width:25%!important}.col-md-4{flex:0 0 33.333%!important;max-width:33.333%!important}.col-md-5{flex:0 0 41.667%!important;max-width:41.667%!important}.col-md-6{flex:0 0 50%!important;max-width:50%!important}.col-md-7{flex:0 0 58.333%!important;max-width:58.333%!important}.d-md-block{display:block!important}.d-md-inline{display:inline!important}}
@media (min-width:992px){.col-lg-8{flex:0 0 83%!important;max-width:83%!important}.col-lg-10{flex:0 0 100%!important;max-width:100%!important}}
.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}
.d-none{display:none!important}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.gap-2{gap:8px}.w-100{width:100%}
.text-center{text-align:center}.text-uppercase{text-transform:uppercase}.text-muted{color:#5b6670!important}.text-primary{color:#b0176f!important}.text-success{color:#15803d!important}.text-white{color:#fff!important}.text-decoration-none{text-decoration:none}
.fw-bold{font-weight:700}.small,small{font-size:.875em}.fs-5{font-size:1.15rem}.h3,h3{font-size:1.4rem}.h5,h5{font-size:1.15rem}h6{font-size:1rem}h5,h6{margin:0 0 .5rem}p{margin:0 0 .75rem}
.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:4px!important}.mb-2{margin-bottom:8px!important}.mb-3{margin-bottom:16px!important}.mb-4{margin-bottom:20px!important}.mb-5{margin-bottom:24px!important}
.mt-2{margin-top:8px!important}.mt-3{margin-top:16px!important}.mt-4{margin-top:20px!important}.mt-5{margin-top:24px!important}.me-1{margin-right:4px}.me-2{margin-right:8px}.mx-auto{margin-left:auto;margin-right:auto}
.p-3{padding:16px!important}.p-4{padding:20px!important}.p-5{padding:28px!important}.py-3{padding-top:14px!important;padding-bottom:14px!important}
@media (max-width:575px){.p-4{padding:14px!important}.p-5{padding:20px!important}}
.bg-light{background:#f6f3ee!important}.bg-transparent{background:transparent!important}.border-0{border:0!important}.rounded{border-radius:10px}.shadow-sm{box-shadow:0 1px 3px rgba(0,0,0,.08)}.shadow{box-shadow:0 4px 14px rgba(0,0,0,.12)}.img-fluid{max-width:100%;height:auto}
.card{background:#fff;border:1px solid #e5e0d8;border-radius:16px}
.form-label{display:block;margin-bottom:6px}
.form-control,.form-select{display:block;width:100%;min-height:44px;padding:8px 12px;font:inherit;color:inherit;background:#fff;border:1px solid #cfc8bd;border-radius:8px}
.form-select-sm{min-height:44px}
.form-control:focus,.form-select:focus{outline:2px solid #b0176f;outline-offset:1px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 16px;font:inherit;font-weight:600;border:1px solid transparent;border-radius:10px;cursor:pointer;text-decoration:none;background:none;color:inherit}
.btn:disabled{opacity:.6;cursor:not-allowed}.btn-lg{font-size:1.05rem;padding:12px 20px}.btn-sm{font-size:.9rem}
.btn-primary{background:#b0176f;color:#fff}.btn-success{background:#15803d;color:#fff}.btn-outline-primary{border-color:#b0176f;color:#b0176f}.btn-outline-secondary{border-color:#8a8378;color:#3d3a35}.btn-link{color:#5b6670}
.progress{display:flex;overflow:hidden;height:10px;background:#ece7df;border-radius:6px}.progress-bar{background:#b0176f;transition:width .3s}
.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.18) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.18) 50%,rgba(255,255,255,.18) 75%,transparent 75%);background-size:1rem 1rem}
.spinner-border{display:inline-block;width:1.5rem;height:1.5rem;border:.2em solid currentColor;border-right-color:transparent;border-radius:50%;animation:fsmspin .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.15em}
@keyframes fsmspin{to{transform:rotate(360deg)}}
.table-responsive{overflow-x:auto}
button,[role=radio],[role=slider],.upload-box{touch-action:manipulation}
.upload-box{display:block}
:focus-visible{outline:3px solid #b0176f;outline-offset:2px}
.fsm-ph{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
[hidden]{display:none!important}
.fsm-note{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:#fff7e6;border:1px solid #f0d49b;font-size:.92rem}
.fsm-res{margin-top:16px}.fsm-res label{display:block;font-weight:600;margin-bottom:6px}
.fsm-res select{width:100%;min-height:44px;padding:8px 12px;border-radius:10px;border:1px solid #d6d0dc;background:#fff;font:inherit;color:inherit}
.fsm-res select:focus-visible{outline:2px solid #b5179e;outline-offset:2px}
.fsm-res-hint{margin:6px 0 0;font-size:.85rem;opacity:.75}
.fsm-preflight{margin:10px auto 8px;max-width:560px;font-size:.9rem;text-align:center;opacity:.85}
#cancelBtn{min-height:44px}
