/* DEC 事工聯絡表單 */
.dec-mc-wrap{--dec-mc-accent:#1f4e79;--dec-mc-accent-dark:#163a5a;--dec-mc-radius:4px;margin:.6em 0}
.dec-mc-align-center{text-align:center}
.dec-mc-align-right{text-align:right}

.dec-mc-open{display:inline-flex;align-items:center;gap:.5em;cursor:pointer;border:0;
  background:var(--dec-mc-accent,#1f4e79);color:#fff;font:inherit;font-weight:600;line-height:1.2;
  border-radius:var(--dec-mc-radius,4px);transition:background .2s ease,transform .1s ease;text-decoration:none}
.dec-mc-open:hover,.dec-mc-open:focus{background:var(--dec-mc-accent-dark,#163a5a);color:#fff}
.dec-mc-open:active{transform:translateY(1px)}
.dec-mc-size-small{padding:.45em 1em;font-size:.85em}
.dec-mc-size-medium{padding:.65em 1.4em;font-size:.95em}
.dec-mc-size-large{padding:.85em 1.8em;font-size:1.05em}
.dec-mc-open-icon{font-size:1.1em;line-height:1}
.dec-mc-note{margin-top:.4em;font-size:.85em;opacity:.75}

/* 彈窗 */
.dec-mc-modal[hidden]{display:none}
.dec-mc-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-start;justify-content:center;
  padding:4vh 16px;overflow-y:auto}
.dec-mc-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);animation:dec-mc-fade .18s ease}
.dec-mc-dialog{position:relative;background:#fff;color:#222;width:100%;max-width:560px;border-radius:8px;
  box-shadow:0 20px 60px rgba(0,0,0,.35);padding:32px 30px 26px;animation:dec-mc-pop .18s ease;
  font-size:15px;line-height:1.6;box-sizing:border-box}
@keyframes dec-mc-fade{from{opacity:0}to{opacity:1}}
@keyframes dec-mc-pop{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}

.dec-mc-close{position:absolute;top:8px;right:12px;background:none;border:0;font-size:28px;line-height:1;
  color:#888;cursor:pointer;padding:4px 8px}
.dec-mc-close:hover{color:#222}

.dec-mc-title{margin:0 0 .3em;font-size:1.35em;color:#1f4e79}
.dec-mc-intro{margin:0 0 1.2em;font-size:.9em;color:#666}

.dec-mc-field{margin-bottom:14px}
.dec-mc-row{display:flex;gap:14px;flex-wrap:wrap}
.dec-mc-row .dec-mc-field{flex:1 1 200px;min-width:0}
.dec-mc-field label{display:block;margin-bottom:5px;font-weight:600;font-size:.88em;color:#333}
.dec-mc-req{color:#c0392b}
.dec-mc-field input,.dec-mc-field select,.dec-mc-field textarea{
  width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #ccd2d9;border-radius:4px;
  font:inherit;font-size:.95em;background:#fff;color:#222;margin:0}
.dec-mc-field textarea{resize:vertical;min-height:110px}
.dec-mc-field input:focus,.dec-mc-field select:focus,.dec-mc-field textarea:focus{
  outline:none;border-color:#1f4e79;box-shadow:0 0 0 3px rgba(31,78,121,.12)}
.dec-mc-field .dec-mc-invalid{border-color:#c0392b}

.dec-mc-locked{padding:10px 12px;background:#f2f5f8;border:1px solid #e0e6ec;border-radius:4px;font-size:.92em}
.dec-mc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.dec-mc-actions{margin-top:18px}
.dec-mc-submit{width:100%;padding:.85em 1em;border:0;border-radius:4px;background:#1f4e79;color:#fff;
  font:inherit;font-weight:600;font-size:1em;cursor:pointer;transition:background .2s ease}
.dec-mc-submit:hover{background:#163a5a}
.dec-mc-submit[disabled]{opacity:.6;cursor:not-allowed}

.dec-mc-msg{margin-top:12px;font-size:.9em;display:none}
.dec-mc-msg.is-error{display:block;color:#c0392b}
.dec-mc-msg.is-ok{display:block;color:#1e7e34}
.dec-mc-privacy{margin:14px 0 0;font-size:.78em;color:#999;text-align:center}

.dec-mc-open:focus-visible,.dec-mc-close:focus-visible,.dec-mc-submit:focus-visible{
  outline:2px solid #1f4e79;outline-offset:2px}

@media (max-width:480px){
  .dec-mc-dialog{padding:28px 20px 22px}
  .dec-mc-row{gap:0}
}
