/* CommonHand V90.17 — Launch Hardening & Final QA */
.v917-readiness{margin:16px 0;display:grid;gap:14px}
.v917-readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.v917-readiness-head.compact{align-items:center}
.v917-readiness h2,.v917-readiness h3{color:#17233d;margin:5px 0 4px}
.v917-readiness p{margin:0;color:#69748a;line-height:1.55}
.v917-statusbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-radius:14px;border:1px solid #ded9ff;background:#f7f5ff;color:#40307d}
.v917-statusbar.ready{border-color:#b8e6d5;background:#effaf6;color:#176b50}
.v917-statusbar.review{border-color:#f2c7c7;background:#fff5f5;color:#9b3434}
.v917-statusbar strong{font-size:12px;letter-spacing:.08em}.v917-statusbar span{font-size:13px;font-weight:750}
.v917-two-col{display:grid;grid-template-columns:1.12fr .88fr;gap:14px}
.v917-card{background:#fff;border:1px solid #e7e9f0;border-radius:18px;padding:17px;box-shadow:0 8px 26px rgba(23,35,61,.045)}
.v917-muted{font-size:13px!important;margin-bottom:12px!important}
.v917-signal{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:11px 0;border-top:1px solid #edf0f5}
.v917-signal:first-of-type{margin-top:8px}.v917-signal div{min-width:0}.v917-signal strong{display:block;color:#25314b;font-size:13px}.v917-signal small{display:block;color:#7c879b;margin-top:3px;line-height:1.35;word-break:break-word}
.v917-signal>span{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;background:#eef8f4;color:#1d7a5d}
.v917-signal.warn>span{background:#fff5df;color:#90631d}.v917-signal.bad>span{background:#fff0f0;color:#a23b3b}
.v917-checklist{display:grid;gap:8px;margin-top:12px}.v917-checkrow{display:flex;gap:10px;align-items:flex-start;padding:10px 11px;border:1px solid #ebeef4;border-radius:13px;background:#fbfcfe;cursor:pointer}.v917-checkrow input{margin-top:3px;accent-color:#7457ff;width:17px;height:17px}.v917-checkrow span{display:block}.v917-checkrow strong{display:block;color:#26324a;font-size:13px}.v917-checkrow small{display:block;color:#7b8798;line-height:1.35;margin-top:2px}
.v917-notes{display:grid;gap:6px;margin:12px 0 9px}.v917-notes span{font-size:12px;font-weight:850;color:#4c5870}.v917-notes textarea{width:100%;resize:vertical;border:1px solid #dfe3ec;border-radius:12px;padding:10px 11px;font:inherit;box-sizing:border-box}.v917-notes textarea:focus{outline:2px solid rgba(116,87,255,.18);border-color:#8d76ff}
.v917-funnel-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:10px}.v917-funnel{border:1px solid #eceef5;background:#fafbfe;border-radius:14px;padding:12px}.v917-funnel span{display:block;color:#7a8598;font-size:11px}.v917-funnel strong{display:block;color:#17233d;font-size:20px;margin-top:5px}
.v917-info{padding:12px 14px;border-radius:14px;background:#f5f2ff;border:1px solid #dfd7ff;color:#4f3a93;font-size:13px}.v917-error{display:flex;gap:7px;flex-direction:column;padding:14px 16px;border-radius:14px;background:#fff5f5;border:1px solid #f1cccc;color:#8d3737}.v917-error span{font-size:12px}
.v917-payment-banner{position:fixed;z-index:99999;left:50%;top:16px;transform:translateX(-50%);width:min(680px,calc(100vw - 28px));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;border-radius:15px;box-shadow:0 16px 50px rgba(23,35,61,.18);background:#f0faf6;border:1px solid #bce6d6;color:#225f4d}.v917-payment-banner.cancelled{background:#faf8ff;border-color:#dcd4ff;color:#51418a}.v917-payment-banner strong{font-size:13px}.v917-payment-banner span{font-size:12px;line-height:1.4}.v917-payment-banner button{border:0;background:transparent;font-size:20px;color:inherit;cursor:pointer;min-width:34px;min-height:34px}
#v917NetworkStatus{display:none;position:fixed;z-index:99998;right:16px;bottom:16px;max-width:360px;padding:10px 12px;border-radius:12px;background:#17233d;color:#fff;font-size:12px;font-weight:750;box-shadow:0 10px 28px rgba(0,0,0,.18)}#v917NetworkStatus.show{display:block}

/* Conservative launch mobile hardening: prevent sideways page drift and keep critical controls tappable. */
html,body{max-width:100%;overflow-x:hidden}
img,video,canvas,svg{max-width:100%}
.v58-table-wrap,.v77a-table-wrap,.v68-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:900px){.v917-two-col{grid-template-columns:1fr}.v917-funnel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
  .v917-readiness-head,.v917-statusbar{align-items:stretch;flex-direction:column}.v917-readiness-head .v916-btn{width:100%}.v917-funnel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v917-payment-banner{top:10px;grid-template-columns:1fr auto}.v917-payment-banner strong{grid-column:1}.v917-payment-banner span{grid-column:1}.v917-payment-banner button{grid-column:2;grid-row:1/3}
  #v917NetworkStatus{left:12px;right:12px;bottom:12px;max-width:none}
  button,.btn,input[type="button"],input[type="submit"]{min-height:42px}
  input,select,textarea{max-width:100%;box-sizing:border-box}
  .v68-message-layout{min-width:0}.v68-thread-panel,.v68-message-detail{min-width:0}
}
@media(max-width:430px){.v917-funnel-grid{grid-template-columns:1fr 1fr}.v917-card{padding:14px}.v917-signal{align-items:flex-start;flex-direction:column}.v917-signal>span{align-self:flex-start}}
