/* VoicesUK Workspace — Gravity Forms project brief and editable audition script */
.gform_wrapper .gform_fields .gfield.vukx-brief-fullwidth,
.gform_wrapper .gform_fields .gfield.vukx-script-fullwidth,
.gform_wrapper .gform_fields .gfield.vukx-brief-fullwidth.gfield--width-half,
.gform_wrapper .gform_fields .gfield.vukx-script-fullwidth.gfield--width-half{
 grid-column:1 / -1!important;grid-row:auto!important;order:initial!important;
 width:100%!important;min-width:0!important;max-width:none!important;float:none!important;clear:both!important;
}
.gfield.vukx-brief-fullwidth textarea,.gfield.vukx-script-fullwidth textarea{
 width:100%!important;max-width:100%!important;box-sizing:border-box!important;
}
.gfield.vukx-script-stage-hidden{display:none!important}
.gfield.vukx-script-stage-visible{display:block;animation:vukxScriptStepIn .9s cubic-bezier(.16,.7,.2,1) both;margin-top:20px!important}
@keyframes vukxScriptStepIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.vukx-brief-readiness{
 display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
 margin:14px 0 4px;padding:14px 17px;background:#f6f9f8;
 border:1px solid #d6e5df;border-radius:13px;color:#526e65;font-size:13px;
}
.vukx-brief-readiness.is-ready{background:#f0f9f3;border-color:#c1dece;color:#245c49}
.vukx-brief-readiness.is-saved{background:#eff8f2;border-color:#bfddcb;color:#225c47}
.vukx-brief-ready-copy{flex:1 1 230px;line-height:1.5;font-weight:550}
.gform_wrapper .vukx-brief-save-panel button{
 appearance:none!important;border-radius:10px!important;min-height:42px!important;
 padding:10px 19px!important;font-size:13px!important;line-height:1.4!important;
 font-weight:700!important;letter-spacing:0!important;text-transform:none!important;text-shadow:none!important;
}
.gform_wrapper .vukx-brief-ready-action{background:#226357!important;border:1px solid #226357!important;color:#fff!important;cursor:pointer!important}
.gform_wrapper .vukx-brief-ready-action:disabled{background:#b7cbc2!important;border-color:#b7cbc2!important;cursor:not-allowed!important;opacity:.75}
.gform_wrapper .vukx-brief-edit-action{background:#fff!important;color:#226357!important;border:1px solid #b7d2c6!important;cursor:pointer!important}
.vukx-brief-ready-action[hidden],.vukx-brief-edit-action[hidden]{display:none!important}
.vukx-brief-readiness.is-ready .vukx-brief-ready-action:not(:disabled){animation:vukxSavePulse 2.2s ease-in-out infinite}
@keyframes vukxSavePulse{0%,100%{box-shadow:0 0 0 0 rgba(35,99,86,.2)}60%{box-shadow:0 0 0 9px rgba(35,99,86,0)}}
.vukx-brief-saved-input{background:#eef4f1!important;color:#47645a!important;opacity:.7;cursor:default!important}

/* A single integrated stage; Gravity Forms provides the Script sample field heading. */
.gform_wrapper .gfield .vukx-script-helper{
 box-sizing:border-box;max-width:100%;clear:both;
 padding:17px 18px;margin:10px 0 15px;
 border:1px solid #d6e6df;border-radius:14px;
 background:linear-gradient(135deg,#f8fbf9 0%,#f4f9f6 100%);
 color:#244e42;
}
.vukx-script-intro{margin:0 0 15px!important;color:#587369!important;font-size:14px!important;line-height:1.6!important;font-weight:400!important}
.vukx-script-prompt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;width:100%}
.gform_wrapper .vukx-script-helper .vukx-script-prompt button{
 display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
 width:100%!important;min-width:0!important;min-height:43px!important;
 padding:9px 14px!important;border-radius:10px!important;
 font-family:inherit!important;font-size:13px!important;line-height:1.35!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;
 text-shadow:none!important;text-decoration:none!important;
 box-shadow:0 2px 5px rgba(10,70,47,.055)!important;cursor:pointer!important;
 transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt .vukx-script-generate{
 background:#226357!important;border:1px solid #226357!important;color:#fff!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt .vukx-script-own{
 background:#fff!important;border:1px solid #b7d2c7!important;color:#225c4f!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt button:disabled{
 opacity:.72!important;cursor:default!important;transform:none!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt .vukx-script-generate.is-complete{
 background:#e7f3ed!important;color:#266149!important;border-color:#c0dfcf!important;box-shadow:none!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt button:not(:disabled):hover{
 transform:translateY(-2px);box-shadow:0 6px 17px rgba(10,70,47,.11)!important;
}
.gform_wrapper .vukx-script-helper .vukx-script-prompt button:focus-visible,
.gform_wrapper .vukx-script-edit-toolbar button:focus-visible,
.gform_wrapper .vukx-brief-save-panel button:focus-visible{
 outline:3px solid #82c5a6!important;outline-offset:3px!important;
}
.vukx-script-btn-icon{font-size:16px;line-height:1;flex:none;font-weight:400}
.vukx-script-btn-label{display:block;min-width:0;white-space:normal;text-align:center;overflow-wrap:normal}
.vukx-script-status{margin-top:12px;color:#3e6a5b;font-size:13px;line-height:1.5}
.vukx-script-status:empty{display:none}
.vukx-script-helper.is-loading .vukx-script-status{display:flex;gap:8px;align-items:center;color:#286a59;font-weight:600}
.vukx-script-spinner{width:15px;height:15px;border-radius:50%;flex:none;border:2px solid #bfd9d0;border-top-color:#226357;animation:vukxscriptspin .7s linear infinite}
@keyframes vukxscriptspin{to{transform:rotate(360deg)}}

/* The native GF textarea and its validation continue to own script input. */
.vukx-script-input-area-hidden{display:none!important}
.vukx-script-input-area-visible{animation:vukxInputReveal .65s cubic-bezier(.2,.75,.25,1) both}
@keyframes vukxInputReveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.vukx-script-input-locked{background:#f5f8f7!important;cursor:progress!important}
.vukx-script-input-area.is-generating{position:relative;min-height:110px}
.vukx-script-input-area.is-generating::after{
 content:'Creating your script sample…';position:absolute;inset:0;z-index:2;
 display:flex;align-items:center;justify-content:center;box-sizing:border-box;
 border-radius:10px;background:rgba(245,250,247,.86);color:#276454;
 font-family:inherit;font-size:14px;font-weight:650;line-height:1.5;text-align:center;pointer-events:auto;
}
/* Keep the restore action beside the script box, not inside the option card. */
.vukx-script-edit-toolbar[hidden],.vukx-script-restore[hidden]{display:none!important}
.vukx-script-edit-toolbar{
 display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
 margin:8px 0 6px;padding:2px 0;border:0;
 border-radius:0;background:transparent;color:#557468;font-size:12px;line-height:1.4;
}
.vukx-script-edit-context{flex:1 1 180px}
.gform_wrapper .vukx-script-edit-toolbar .vukx-script-restore{
 display:inline-flex!important;align-items:center;justify-content:center;
 min-height:36px!important;padding:7px 13px!important;
 border:1px solid #b5d1c5!important;border-radius:9px!important;
 background:#fff!important;color:#22594c!important;
 font-size:12px!important;line-height:1.45!important;font-weight:700!important;
 text-transform:none!important;text-shadow:none!important;box-shadow:none!important;
 cursor:pointer!important;white-space:normal;
}
.gform_wrapper .vukx-script-edit-toolbar .vukx-script-restore:hover{background:#ebf5f0!important;border-color:#8dbba6!important}
.gform_wrapper .vukx-script-edit-toolbar .vukx-script-restore[hidden]{display:none!important}
.vukx-script-hint-concealed{display:none!important}

/* Matching in-page confirmation for replacing existing script text. */
.vukx-script-modal[hidden]{display:none!important}
.vukx-script-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:18px}
.vukx-script-modal-backdrop{position:absolute;inset:0;background:rgba(13,35,31,.54);backdrop-filter:blur(4px)}
.vukx-script-modal-card{
 position:relative;width:min(100%,440px);padding:29px;border-radius:19px;
 background:#fff;box-shadow:0 23px 75px rgba(0,34,27,.25);color:#254f44;
 animation:vukxModalEnter .22s ease both;
}
.vukx-script-modal-symbol{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#e9f4ef;color:#236b58;font-size:22px;margin-bottom:15px}
.vukx-script-modal-card h3{font-size:21px;line-height:1.3;color:#183f37;margin:0 0 10px}
.vukx-script-modal-card p{font-size:14px;line-height:1.6;color:#526e64;margin:0 0 23px}
.vukx-script-modal-buttons{display:flex;gap:10px;flex-wrap:wrap}
.vukx-script-modal-buttons button{
 flex:1 1 125px;min-height:45px;padding:11px 15px;border-radius:10px;
 font-size:14px;font-weight:650;cursor:pointer;text-shadow:none;
}
.vukx-script-modal-cancel{background:#f2f6f4!important;border:1px solid #d5e5df!important;color:#25594e!important}
.vukx-script-modal-confirm{background:#226357!important;border:1px solid #226357!important;color:#fff!important}
.vukx-script-modal-open{overflow:hidden}
@keyframes vukxModalEnter{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:670px){
 .vukx-script-prompt{grid-template-columns:1fr;gap:9px}
 .gform_wrapper .gfield .vukx-script-helper{padding:15px 13px}
 .vukx-script-modal-card{padding:23px}
}
@media(prefers-reduced-motion:reduce){
 .gfield.vukx-script-stage-visible,.vukx-script-input-area-visible,.vukx-script-modal-card,
 .vukx-brief-readiness.is-ready .vukx-brief-ready-action:not(:disabled),.vukx-script-spinner{animation:none!important}
 .gform_wrapper .vukx-script-helper .vukx-script-prompt button{transition:none!important}
}

/* An unobtrusive status line, not another input-like field. */
.vukx-script-edit-toolbar .vukx-script-edit-context{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.6;color:#557468}
.gform_wrapper .vukx-script-edit-toolbar .vukx-script-restore{min-height:32px!important;padding:5px 10px!important;font-weight:600!important}
