
.gcp-rs,.gcp-rs *{box-sizing:border-box}.gcp-rs{max-width:760px;margin:28px auto;font-family:inherit;color:#fff}.gcp-rs-search-card,.gcp-rs-ticket{border:1px solid #29445C;border-radius:18px;background:linear-gradient(145deg,#111E2A,#09151F);box-shadow:0 24px 60px rgba(0,0,0,.14)}.gcp-rs-search-card{padding:24px}.gcp-rs-eyebrow{color:#02AEE7;font-size:9px;font-weight:800;letter-spacing:1.7px}.gcp-rs h2,.gcp-rs h3{margin:7px 0 0;color:#fff;line-height:1.08}.gcp-rs h2{font-size:34px}.gcp-rs p{color:#8FA2B4;font-size:12px;line-height:1.65}.gcp-rs-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px}.gcp-rs input,.gcp-rs textarea{width:100%;border:1px solid #355169;border-radius:11px;background:#09151F!important;color:#fff!important;-webkit-text-fill-color:#fff!important;caret-color:#02AEE7;outline:0;font:inherit}.gcp-rs input{height:46px;padding:0 13px}.gcp-rs textarea{padding:12px;resize:vertical}.gcp-rs input::placeholder,.gcp-rs textarea::placeholder{color:#6F8598;opacity:1}.gcp-rs input:focus,.gcp-rs textarea:focus{border-color:#02AEE7;box-shadow:0 0 0 3px rgba(2,174,231,.07)}.gcp-rs button,.gcp-rs a{font:inherit}.gcp-rs-form button,.gcp-rs-primary,.gcp-rs-secondary,.gcp-rs-action{min-height:44px;padding:0 16px;border-radius:999px;font-size:10px;font-weight:800;cursor:pointer;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center}.gcp-rs-form button,.gcp-rs-primary{border:1px solid #02AEE7;background:#02AEE7;color:#fff}.gcp-rs-secondary{border:1px solid #29445C;background:transparent;color:#fff}.gcp-rs-message{display:none;margin-top:12px;padding:11px 12px;border-radius:10px;font-size:11px}.gcp-rs-message.show{display:block}.gcp-rs-message.error{border:1px solid rgba(255,92,92,.35);background:rgba(255,92,92,.08);color:#FFB4B4}.gcp-rs-message.ok{border:1px solid rgba(102,224,157,.3);background:rgba(102,224,157,.08);color:#A9F0C8}.gcp-rs-loading{text-align:center;color:#9EB0C0;padding:26px 8px}.gcp-rs-spinner{width:28px;height:28px;border:3px solid #29445C;border-top-color:#02AEE7;border-radius:50%;margin:0 auto 8px;animation:gcpRsSpin .8s linear infinite}@keyframes gcpRsSpin{to{transform:rotate(360deg)}}.gcp-rs-candidate{margin-top:14px;padding:17px;border:1px solid #29445C;border-radius:14px;background:#0A151F}.gcp-rs-candidate-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.gcp-rs-ticket-no{font-size:16px;font-weight:800}.gcp-rs-verify{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px}.gcp-rs-verify button{border:1px solid #02AEE7;background:transparent;color:#02AEE7;border-radius:9px;padding:0 14px;font-weight:800}.gcp-rs-ticket{overflow:hidden;margin-top:16px}.gcp-rs-ticket-head{padding:18px 20px;background:linear-gradient(90deg,#10253D,#0D1722);display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid #29445C}.gcp-rs-status{padding:7px 10px;border-radius:999px;border:1px solid #02AEE7;color:#02AEE7;font-size:9px;font-weight:800}.gcp-rs-ticket-body{padding:20px}.gcp-rs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gcp-rs-box{padding:14px;border:1px solid #29445C;border-radius:12px;background:#0A151F}.gcp-rs-box span{display:block;color:#71899D;font-size:9px}.gcp-rs-box strong{display:block;color:#fff;font-size:12px;margin-top:4px;word-break:break-word}.gcp-rs-devices{margin-top:10px}.gcp-rs-device{padding:13px 14px;border:1px solid #29445C;border-radius:12px;background:#0A151F;margin-top:8px}.gcp-rs-device strong{display:block}.gcp-rs-device small{display:block;color:#7E94A7;margin-top:4px}.gcp-rs-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 20px 20px}.gcp-rs-action{border:1px solid #29445C;background:#0B1721;color:#fff!important}.gcp-rs-action:hover{border-color:#02AEE7}.gcp-rs-modal[hidden]{display:none!important}.gcp-rs-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}.gcp-rs-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72)}.gcp-rs-dialog{position:relative;width:min(520px,100%);padding:22px;border:1px solid #29445C;border-radius:18px;background:#0B151F;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.45)}.gcp-rs-x{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}.gcp-rs-dialog textarea{margin-top:12px}.gcp-rs-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}@media(max-width:620px){.gcp-rs-form,.gcp-rs-verify,.gcp-rs-grid,.gcp-rs-actions{grid-template-columns:1fr}.gcp-rs-search-card{padding:18px}.gcp-rs-ticket-head{flex-direction:column}.gcp-rs-form button,.gcp-rs-verify button{height:44px}.gcp-rs-dialog-actions{flex-direction:column-reverse}.gcp-rs-dialog-actions button{width:100%}}


/* v1.1 compact embed mode — designed to sit inside the polished Elementor status page */
.gcp-rs.gcp-rs-compact{max-width:650px;margin:0 auto 18px!important;padding:0 10px;color:#fff}
.gcp-rs-search-compact{padding:10px!important;border:1px solid #29445C!important;border-radius:16px!important;background:linear-gradient(145deg,#101C28,#0B151F)!important;box-shadow:none!important}
.gcp-rs-search-compact .gcp-rs-form{margin-top:0!important;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.gcp-rs-search-compact input{height:48px!important;border-radius:11px!important;padding:0 14px!important;font-size:12px!important}
.gcp-rs-search-compact .gcp-rs-form button{min-width:122px;height:48px!important;border-radius:11px!important;padding:0 16px!important}
.gcp-rs-compact #gcp-rs-results{margin-top:14px}
.gcp-rs-compact .gcp-rs-candidate{max-width:470px;margin:14px auto 0;padding:18px}
.gcp-rs-compact .gcp-rs-verify{grid-template-columns:1fr auto}
.gcp-rs-compact .gcp-rs-ticket{max-width:650px;margin:14px auto 0}
@media(max-width:620px){.gcp-rs.gcp-rs-compact{padding:0}.gcp-rs-search-compact .gcp-rs-form,.gcp-rs-compact .gcp-rs-verify{grid-template-columns:1fr}.gcp-rs-search-compact .gcp-rs-form button,.gcp-rs-compact .gcp-rs-verify button{width:100%}}


/* ==========================================================
   v1.2 POLISHED EMBED — seamless with GadgetCare Pros status page
========================================================== */
.gcp-rs.gcp-rs-compact{
  width:100%;max-width:700px;margin:0 auto!important;padding:0 18px 20px!important;
}
.gcp-rs-search-compact{
  padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
.gcp-rs-search-compact .gcp-rs-form{
  margin:0!important;padding:9px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 142px!important;
  gap:8px!important;border:1px solid #29445C!important;border-radius:15px!important;
  background:linear-gradient(145deg,#101C28,#0B151F)!important;
}
.gcp-rs-search-compact input{
  height:48px!important;border:1px solid #355169!important;border-radius:10px!important;
  background:#09151F!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  caret-color:#02AEE7!important;padding:0 15px!important;font-size:12px!important;box-shadow:none!important;
}
.gcp-rs-search-compact input::placeholder{color:#71889B!important;opacity:1!important}
.gcp-rs-search-compact input:focus{border-color:#02AEE7!important;box-shadow:0 0 0 3px rgba(2,174,231,.08)!important}
.gcp-rs-search-compact .gcp-rs-form button{
  width:100%!important;min-width:0!important;height:48px!important;padding:0 16px!important;
  border:1px solid #02AEE7!important;border-radius:10px!important;background:#02AEE7!important;color:#fff!important;
  font-size:10px!important;font-weight:800!important;letter-spacing:.2px!important;
}
.gcp-rs-search-compact .gcp-rs-form button:hover{background:#18B9EE!important;border-color:#18B9EE!important}
.gcp-rs-compact #gcp-rs-message{max-width:680px;margin:10px auto 0!important}
.gcp-rs-compact #gcp-rs-results{margin-top:12px!important}
.gcp-rs-compact .gcp-rs-loading{padding:22px 8px!important}
.gcp-rs-compact .gcp-rs-candidate{max-width:520px;margin:12px auto 0!important;padding:17px!important;border-radius:14px!important}
.gcp-rs-compact .gcp-rs-verify{grid-template-columns:minmax(0,1fr) 110px!important;gap:8px!important}
.gcp-rs-compact .gcp-rs-verify input{height:44px!important}
.gcp-rs-compact .gcp-rs-verify button{height:44px!important;border-radius:10px!important}
.gcp-rs-compact .gcp-rs-ticket{max-width:700px;margin:14px auto 0!important;border-radius:16px!important}
.gcp-rs-compact .gcp-rs-ticket-head{padding:18px!important}
.gcp-rs-compact .gcp-rs-ticket-body{padding:18px!important}
.gcp-rs-compact .gcp-rs-actions{padding:0 18px 18px!important}
@media(max-width:620px){
  .gcp-rs.gcp-rs-compact{padding:0 12px 16px!important}
  .gcp-rs-search-compact .gcp-rs-form{grid-template-columns:1fr!important;padding:8px!important}
  .gcp-rs-search-compact .gcp-rs-form button{width:100%!important}
  .gcp-rs-compact .gcp-rs-verify{grid-template-columns:1fr!important}
}


/* ==========================================================
   v1.3 CLEAN / UNIFORM UI
   Visual-only update. API behavior is unchanged.
========================================================== */

.gcp-rs.gcp-rs-compact{
  width:100% !important;
  max-width:700px !important;
  margin:0 auto !important;
  padding:0 14px 20px !important;
}

/* Keep every stage on the same visual width */
.gcp-rs-compact .gcp-rs-search-card,
.gcp-rs-compact #gcp-rs-results,
.gcp-rs-compact .gcp-rs-candidate,
.gcp-rs-compact .gcp-rs-ticket{
  width:100% !important;
  max-width:700px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Main search */
.gcp-rs-search-compact .gcp-rs-form{
  min-height:68px !important;
  padding:9px !important;
  grid-template-columns:minmax(0,1fr) 138px !important;
  gap:9px !important;
  align-items:center !important;
  border-radius:16px !important;
}

.gcp-rs-search-compact input,
.gcp-rs-search-compact .gcp-rs-form button{
  height:48px !important;
  min-height:48px !important;
  border-radius:10px !important;
  margin:0 !important;
}

.gcp-rs-search-compact .gcp-rs-form button{
  white-space:nowrap !important;
  letter-spacing:.25px !important;
}

/* Match / verification */
.gcp-rs-compact .gcp-rs-candidate{
  margin-top:12px !important;
  padding:18px !important;
  border-radius:16px !important;
}

.gcp-rs-candidate-top{
  min-height:42px !important;
  align-items:center !important;
}

.gcp-rs-candidate p{
  margin:10px 0 0 !important;
}

.gcp-rs-compact .gcp-rs-verify{
  margin-top:14px !important;
  grid-template-columns:minmax(0,1fr) 112px !important;
  gap:9px !important;
  align-items:stretch !important;
}

.gcp-rs-compact .gcp-rs-verify input,
.gcp-rs-compact .gcp-rs-verify button{
  height:46px !important;
  min-height:46px !important;
  border-radius:10px !important;
  margin:0 !important;
}

/* Ticket result */
.gcp-rs-compact .gcp-rs-ticket{
  margin-top:14px !important;
  border-radius:18px !important;
}

.gcp-rs-compact .gcp-rs-ticket-head{
  min-height:78px !important;
  padding:18px 20px !important;
  align-items:center !important;
}

.gcp-rs-ticket-no{
  line-height:1.2 !important;
}

.gcp-rs-status{
  flex-shrink:0 !important;
  text-align:center !important;
  line-height:1.2 !important;
}

.gcp-rs-compact .gcp-rs-ticket-body{
  padding:18px 20px !important;
}

.gcp-rs-compact .gcp-rs-grid{
  gap:10px !important;
}

.gcp-rs-compact .gcp-rs-box{
  min-height:70px !important;
  padding:13px 14px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

.gcp-rs-compact .gcp-rs-box span{
  margin-bottom:3px !important;
  letter-spacing:.25px !important;
}

.gcp-rs-compact .gcp-rs-box strong{
  margin-top:0 !important;
  line-height:1.35 !important;
}

.gcp-rs-compact .gcp-rs-devices{
  margin-top:10px !important;
}

.gcp-rs-compact .gcp-rs-device{
  min-height:66px !important;
  margin-top:10px !important;
  padding:13px 14px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

.gcp-rs-compact .gcp-rs-actions{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
  padding:0 20px 20px !important;
}

.gcp-rs-compact .gcp-rs-action{
  width:100% !important;
  min-height:44px !important;
  border-radius:10px !important;
  margin:0 !important;
  white-space:nowrap !important;
}

/* Loading + messages */
.gcp-rs-compact .gcp-rs-loading{
  width:100% !important;
  padding:24px 10px !important;
}

.gcp-rs-compact .gcp-rs-message{
  width:100% !important;
  line-height:1.45 !important;
}

/* ==========================================================
   ADD NOTE MODAL
   The modal is outside .gcp-rs, so it needs separate field rules.
   This fixes the black text while typing.
========================================================== */

.gcp-rs-dialog{
  width:min(560px,100%) !important;
  padding:24px !important;
  border-radius:18px !important;
  background:linear-gradient(145deg,#101C28,#0B151F) !important;
}

.gcp-rs-dialog h3{
  margin:7px 0 0 !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1.15 !important;
}

.gcp-rs-dialog p{
  margin:9px 0 0 !important;
  color:#8FA2B4 !important;
  font-size:12px !important;
  line-height:1.6 !important;
}

.gcp-rs-dialog textarea,
#gcp-rs-note{
  display:block !important;
  width:100% !important;
  min-height:132px !important;
  margin:16px 0 0 !important;
  padding:13px 14px !important;
  border:1px solid #355169 !important;
  border-radius:11px !important;
  background:#09151F !important;
  background-color:#09151F !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  caret-color:#02AEE7 !important;
  outline:none !important;
  font:inherit !important;
  font-size:13px !important;
  line-height:1.55 !important;
  resize:vertical !important;
  box-shadow:none !important;
}

.gcp-rs-dialog textarea::placeholder,
#gcp-rs-note::placeholder{
  color:#71889B !important;
  -webkit-text-fill-color:#71889B !important;
  opacity:1 !important;
}

.gcp-rs-dialog textarea:focus,
#gcp-rs-note:focus{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  background:#09151F !important;
  background-color:#09151F !important;
  border-color:#02AEE7 !important;
  box-shadow:0 0 0 3px rgba(2,174,231,.08) !important;
}

.gcp-rs-dialog textarea:-webkit-autofill,
.gcp-rs-dialog textarea:-webkit-autofill:hover,
.gcp-rs-dialog textarea:-webkit-autofill:focus,
.gcp-rs input:-webkit-autofill,
.gcp-rs input:-webkit-autofill:hover,
.gcp-rs input:-webkit-autofill:focus{
  -webkit-text-fill-color:#FFFFFF !important;
  caret-color:#02AEE7 !important;
  -webkit-box-shadow:0 0 0 1000px #09151F inset !important;
  box-shadow:0 0 0 1000px #09151F inset !important;
  transition:background-color 9999s ease-out 0s !important;
}

.gcp-rs-dialog-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:9px !important;
  margin-top:16px !important;
}

.gcp-rs-dialog-actions button{
  width:100% !important;
  min-height:44px !important;
  border-radius:10px !important;
  margin:0 !important;
}

/* Keep all editable text visible while actively typing */
.gcp-rs input,
.gcp-rs textarea,
.gcp-rs input:focus,
.gcp-rs textarea:focus,
.gcp-rs input:active,
.gcp-rs textarea:active{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  caret-color:#02AEE7 !important;
}

/* Mobile */
@media(max-width:620px){
  .gcp-rs.gcp-rs-compact{
    padding:0 10px 16px !important;
  }

  .gcp-rs-search-compact .gcp-rs-form,
  .gcp-rs-compact .gcp-rs-verify,
  .gcp-rs-compact .gcp-rs-grid,
  .gcp-rs-compact .gcp-rs-actions{
    grid-template-columns:1fr !important;
  }

  .gcp-rs-compact .gcp-rs-ticket-head{
    min-height:0 !important;
    align-items:flex-start !important;
  }

  .gcp-rs-status{
    align-self:flex-start !important;
  }

  .gcp-rs-dialog{
    padding:20px !important;
  }

  .gcp-rs-dialog-actions{
    grid-template-columns:1fr !important;
  }
}


/* ==========================================================
   v1.4 STATUS / VERIFY POLISH
========================================================== */

/* Loading message: cleaner and customer-facing */
.gcp-rs-loading{
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:.1px !important;
  color:#AFC0CE !important;
}
.gcp-rs-spinner{
  width:30px !important;
  height:30px !important;
  margin-bottom:10px !important;
}

/* Verification header badge should read like a process label,
   not like a tiny repair status */
.gcp-rs-verify-badge{
  min-width:auto !important;
  padding:7px 11px !important;
  border-color:#355169 !important;
  color:#9EB0C0 !important;
  background:rgba(53,81,105,.10) !important;
  font-size:8px !important;
  letter-spacing:.45px !important;
  white-space:nowrap !important;
}

/* Verification button: stable size while loading */
.gcp-rs-compact .gcp-rs-verify{
  grid-template-columns:minmax(0,1fr) 128px !important;
}
.gcp-rs-compact .gcp-rs-verify button{
  width:128px !important;
  min-width:128px !important;
  padding:0 12px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  font-size:10px !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.gcp-rs-verify button.is-verifying{
  color:#DDF6FF !important;
  background:rgba(2,174,231,.08) !important;
  border-color:#02AEE7 !important;
  cursor:wait !important;
}
.gcp-rs-btn-spinner{
  width:13px !important;
  height:13px !important;
  flex:0 0 13px !important;
  border:2px solid rgba(255,255,255,.25) !important;
  border-top-color:#FFFFFF !important;
  border-radius:50% !important;
  animation:gcpRsSpin .75s linear infinite !important;
}

/* Final ticket status deserves visual priority */
.gcp-rs-final-status{
  min-width:112px !important;
  min-height:38px !important;
  padding:9px 14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-width:1px !important;
  border-radius:999px !important;
  background:rgba(2,174,231,.10) !important;
  box-shadow:inset 0 0 0 1px rgba(2,174,231,.06) !important;
  color:#38C5F4 !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.25px !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}

/* Slightly stronger ticket heading hierarchy */
.gcp-rs-ticket-head .gcp-rs-ticket-no{
  font-size:18px !important;
  line-height:1.2 !important;
}
.gcp-rs-ticket-head .gcp-rs-eyebrow{
  margin-bottom:4px !important;
}

/* Disabled verification control shouldn't collapse or fade too much */
.gcp-rs-verify button:disabled{
  opacity:1 !important;
}

/* Mobile */
@media(max-width:620px){
  .gcp-rs-compact .gcp-rs-verify{
    grid-template-columns:1fr !important;
  }
  .gcp-rs-compact .gcp-rs-verify button{
    width:100% !important;
    min-width:0 !important;
  }
  .gcp-rs-final-status{
    min-width:0 !important;
    font-size:11px !important;
  }
}
