/* V29.0.6 online-service application */
.online-apply-hero-btn{border:1px solid rgba(212,175,101,.58)!important;background:rgba(255,255,255,.08)!important;color:#f3d88d!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.online-apply-hero-btn:hover{background:rgba(212,175,101,.16)!important;transform:translateY(-1px)}
.online-apply-modal{position:fixed;inset:0;z-index:2200;background:rgba(2,8,18,.76);backdrop-filter:blur(14px);display:none;align-items:center;justify-content:center;padding:20px}
.online-apply-modal.active{display:flex}
.online-apply-shell{width:min(1080px,96vw);max-height:92vh;overflow:auto;background:#f8f5ee;color:#122033;border:1px solid rgba(212,175,101,.45);border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.38)}
.online-apply-head{position:sticky;top:0;z-index:3;display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:20px 22px;background:rgba(248,245,238,.96);backdrop-filter:blur(10px);border-bottom:1px solid #e7dfd0}
.online-apply-head h2{margin:0;color:#132b48;font:700 clamp(1.2rem,2.5vw,1.7rem)/1.25 var(--font-serif,Georgia,serif)}
.online-apply-head p{margin:.35rem 0 0;color:#58697d;font-size:.88rem;line-height:1.6}
.online-close{border:1px solid #d8cdbb;background:#fff;color:#243b55;border-radius:10px;padding:8px 12px;cursor:pointer}
.online-apply-body{padding:20px 22px 26px}
.online-apply-intro{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;margin-bottom:16px}
.online-box{background:#fff;border:1px solid #e5dccb;border-radius:16px;padding:16px;box-shadow:0 8px 22px rgba(32,44,63,.05)}
.online-box h3{margin:0 0 8px;color:#16385b;font-size:1rem}.online-box p{margin:0;color:#526579;line-height:1.72;font-size:.88rem}
.online-privacy{border-left:4px solid #c79b43;background:#fffaf0}.online-privacy strong{color:#5b4214}.online-privacy ul{margin:10px 0 0;padding-left:20px;color:#4d6175;font-size:.84rem;line-height:1.65}
.online-materials{display:grid;gap:12px;margin-top:16px}.online-material{background:#fff;border:1px solid #e4dccf;border-radius:16px;padding:15px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
.online-material h4{margin:0 0 5px;color:#173653;font-size:.95rem}.online-material .hint{color:#637489;font-size:.8rem;line-height:1.55}.online-material .kind{display:inline-flex;margin-top:8px;border-radius:999px;padding:3px 8px;font-size:.7rem;background:#eef3f7;color:#445b73}.online-material .kind.optional{background:#f7f0df;color:#80611f}
.online-upload-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.online-upload-actions input[type=file]{display:none}.online-upload-btn{cursor:pointer;border:1px solid #c9a653;background:#fffaf0;color:#6d5014;border-radius:10px;padding:8px 11px;font-weight:700;font-size:.8rem}.online-login-btn{border:0;background:#153b62;color:#fff;border-radius:10px;padding:9px 12px;font-weight:700;cursor:pointer}.online-file-list{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}.online-file-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;background:#f4f7fa;border:1px solid #dce5ee;border-radius:9px;font-size:.76rem;color:#29445f}.online-file-chip a{color:#29445f;text-decoration:none}.online-file-chip button{border:0;background:transparent;color:#9d4c43;cursor:pointer;font-weight:800;padding:0 2px}
.online-row-privacy{grid-column:1/-1;display:none;background:#fbf8f1;border-top:1px dashed #e2d7c3;padding:10px 12px;margin:3px -2px -2px;border-radius:10px;color:#4c5e71;font-size:.78rem;line-height:1.6}.online-row-privacy.active{display:block}.online-row-privacy label{display:flex;gap:8px;align-items:flex-start}.online-row-privacy input{margin-top:3px}.online-row-privacy .confirm-upload{margin-top:9px;border:0;background:#c79b43;color:#101820;border-radius:9px;padding:8px 11px;font-weight:800;cursor:pointer}
.online-apply-footer{position:sticky;bottom:0;z-index:2;display:flex;justify-content:space-between;gap:12px;align-items:center;margin:22px -22px -26px;padding:14px 22px;background:rgba(248,245,238,.97);border-top:1px solid #e7dfd0}.online-apply-footer .state{font-size:.8rem;color:#576b80}.online-submit{border:0;background:linear-gradient(135deg,#b88c35,#d4af65);color:#111922;border-radius:11px;padding:11px 18px;font-weight:800;cursor:pointer;box-shadow:0 7px 20px rgba(184,140,53,.2)}
.online-service-ready{font-size:.7rem;padding:3px 7px;border-radius:999px;background:#e8f4ec;color:#276541;font-weight:700}.online-service-coming{font-size:.7rem;padding:3px 7px;border-radius:999px;background:#f2f4f7;color:#667085}
.matrix-actions-dual{display:grid;grid-template-columns:1fr 1fr;gap:8px}.matrix-actions-dual .btn-outline-soft,.matrix-actions-dual .btn-gold{width:100%!important}
@media(max-width:760px){.online-apply-modal{padding:0}.online-apply-shell{width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.online-apply-intro{grid-template-columns:1fr}.online-material{grid-template-columns:1fr}.online-upload-actions{justify-content:flex-start}.online-apply-head,.online-apply-body{padding-left:15px;padding-right:15px}.online-apply-footer{margin-left:-15px;margin-right:-15px}.matrix-actions-dual{grid-template-columns:1fr}}

/* V29.0.6 structured online handling */
.online-privacy-details{margin-top:12px;border-top:1px solid #eadfca;padding-top:10px}
.online-privacy-details summary{cursor:pointer;color:#855f18;font-weight:800;font-size:.82rem;list-style:none}
.online-privacy-details summary::-webkit-details-marker{display:none}
.online-privacy-details summary:before{content:'＋';display:inline-block;margin-right:6px;color:#b88628}.online-privacy-details[open] summary:before{content:'−'}
.privacy-detail-body{margin-top:10px;padding:12px 13px;border-radius:11px;background:#fff;border:1px solid #e7dcc8;color:#4d6175;font-size:.8rem;line-height:1.7}
.privacy-detail-body strong{display:block;color:#173653;margin-bottom:5px}.privacy-detail-body p{font-size:.8rem!important;line-height:1.7!important}
.online-material{align-items:start}.material-main{min-width:0}.material-structured{margin-top:12px;padding:12px;border:1px solid #e5dccb;border-radius:12px;background:#fbfaf7;display:grid;gap:9px}
.material-structured label>span,.material-note>span{display:block;margin-bottom:5px;color:#344b63;font-size:.74rem;font-weight:700}
.material-structured input,.material-structured textarea,.material-structured select,.material-note textarea{width:100%;box-sizing:border-box;border:1px solid #d9cfbf;background:#fff;color:#152a40;border-radius:9px;padding:9px 10px;font:inherit;outline:none}
.material-structured input:focus,.material-structured textarea:focus,.material-structured select:focus,.material-note textarea:focus{border-color:#c59a43;box-shadow:0 0 0 3px rgba(197,154,67,.12)}
.company-names{grid-template-columns:repeat(2,minmax(0,1fr))}.company-names label:last-child{grid-column:1/-1}
.purpose-text{min-height:120px;resize:vertical;overflow:auto}
.choice-line{display:flex!important;gap:8px;align-items:flex-start;color:#233c55;font-size:.82rem}.choice-line input{width:auto!important;margin-top:3px;accent-color:#b88628}
.shareholder-head,.shareholder-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:8px;align-items:center}.shareholder-head{font-size:.72rem;color:#6a7888;font-weight:700;padding:0 2px}.ratio-wrap{position:relative}.ratio-wrap input{padding-right:28px}.ratio-wrap span{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#6d7781;font-size:.78rem}
.add-share-row{justify-self:start;border:1px solid #d8c08b;background:#fff8e9;color:#735315;border-radius:9px;padding:7px 10px;font-weight:700;cursor:pointer}
.material-note{display:block;margin-top:11px}.material-note textarea{min-height:66px;resize:vertical}.material-note small{display:block;text-align:right;color:#8390a0;font-size:.68rem;margin-top:3px}.save-material-text{margin-top:7px;border:1px solid #c9a653;background:#fffaf0;color:#6d5014;border-radius:9px;padding:7px 10px;font-size:.76rem;font-weight:800;cursor:pointer}
.no-file{font-size:.74rem;color:#8a97a7}
@media(max-width:760px){.company-names{grid-template-columns:1fr}.company-names label:last-child{grid-column:auto}.shareholder-head,.shareholder-row{grid-template-columns:minmax(0,1fr) 105px}.material-structured{padding:10px}.material-note textarea{font-size:16px}.material-structured input,.material-structured textarea,.material-structured select{font-size:16px}}

/* V29.0.6: assistance request appears on every material item, including structured fields */
.hc-assist-request{margin-top:12px;display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border:1px solid #ddd5c7;border-radius:11px;background:#faf9f6;color:#42556a;font-size:.78rem;line-height:1.5;cursor:pointer}.hc-assist-request input{margin-top:2px;flex:0 0 auto}.hc-assist-request.active{border-color:#c9a653;background:#fff8e8;color:#604a19}.hc-assist-request span{font-weight:700}

.online-material.assistance-requested .material-structured{opacity:.55;background:#f5f3ee}.online-material.assistance-requested .material-structured input:disabled,.online-material.assistance-requested .material-structured textarea:disabled,.online-material.assistance-requested .material-structured select:disabled{cursor:not-allowed;background:#f1f1ef}

.generic-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.generic-fields label{display:flex;flex-direction:column;gap:6px}.generic-fields label:has(textarea){grid-column:1/-1}.generic-fields textarea{min-height:86px}.material-structured select{appearance:auto}@media(max-width:760px){.generic-fields{grid-template-columns:1fr}.generic-fields label:has(textarea){grid-column:auto}}
