.fc-mail-entry{margin:12px 0;padding:12px 16px;border:1px solid #b8d7cf;border-radius:12px;background:#eff8f4;color:#125d4e;font:600 15px system-ui;cursor:pointer;min-height:44px}
.fc-mail-dialog{width:min(1040px,calc(100vw - 40px));max-height:92dvh;border:1px solid #dce4df;border-radius:20px;padding:0;background:#f9fbfa;color:#20372f;box-shadow:0 24px 100px #0003;font:15px/1.6 system-ui}
.fc-mail-dialog::backdrop{background:#102e2866}.fc-mail-dialog *{box-sizing:border-box}.fc-mail-dialog button,.fc-mail-dialog input,.fc-mail-dialog select,.fc-mail-dialog textarea{font:inherit}
.fc-mail-dialog button{min-height:44px;border:1px solid #c7d8d0;border-radius:10px;background:white;padding:8px 14px;color:#244f42;cursor:pointer}.fc-mail-dialog button:disabled{opacity:.45;cursor:default}
.fc-mail-dialog .fc-primary{background:#126e59;color:white;border-color:#126e59}.fc-mail-dialog :focus-visible{outline:3px solid #78bba6;outline-offset:2px}
.fc-mail-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid #dce4df;position:sticky;top:0;background:#f9fbfa;z-index:1}
.fc-mail-head h2{font-size:20px;margin:0}.fc-mail-head p{font-size:12px;color:#537367;margin:0}.fc-mail-body{padding:24px;overflow-wrap:anywhere}.fc-mail-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.fc-mail-context{border-left:3px solid #b8d7cf;padding:4px 14px;margin:0 0 20px;color:#526b60;white-space:pre-wrap}.fc-mail-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.fc-mail-dialog h3{font-size:16px;margin:0 0 12px}.fc-mail-dialog p{margin:6px 0 12px}.fc-mail-dialog label{display:block;margin:12px 0;font-size:13px;font-weight:600}
.fc-mail-dialog input,.fc-mail-dialog select,.fc-mail-dialog textarea{display:block;width:100%;padding:10px 12px;border:1px solid #c5d5cc;border-radius:8px;background:#fff;color:#20372f;min-height:44px;margin-top:5px}
.fc-mail-dialog textarea{min-height:200px;resize:vertical}.fc-mail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.fc-mail-status{padding:12px 16px;border-radius:10px;background:#e9f3ee;white-space:pre-wrap}.fc-mail-status:empty{display:none}.fc-mail-status[data-error=true]{background:#fff1eb;color:#7b3422}
.fc-mail-thread{margin:0 0 14px;border:1px solid #d7e3dc;border-radius:12px;background:white}.fc-mail-thread summary{cursor:pointer;padding:14px;font-weight:600;list-style-position:inside}.fc-mail-message{padding:14px;border-top:1px solid #e5ece7}.fc-mail-message small{color:#60756a}.fc-mail-message pre{font:14px/1.75 system-ui;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}.fc-mail-message button{font-size:13px}
.fc-mail-empty{padding:28px 16px;color:#60756a;background:#edf3ef;border-radius:12px}.fc-mail-setup{max-width:520px;margin:auto}.fc-mail-setup details{margin:20px 0}.fc-mail-setup summary{cursor:pointer}.fc-mail-muted{font-size:12px;color:#62776d}.fc-mail-preview-tag{padding:4px 10px;border-radius:6px;background:#f0e9d4;color:#746037;font-size:12px}
.fc-mail-slots{display:grid;gap:8px;max-height:250px;overflow:auto}.fc-mail-slots button{text-align:left}.fc-mail-slots button[aria-pressed=true]{background:#d5ece2;border-color:#247e62}.fc-mail-schedule{margin:18px 0;padding:16px;border:1px solid #d7e3dc;border-radius:12px}
@media(max-width:700px){.fc-mail-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0;margin:0;border:0}.fc-mail-head{padding:14px 16px}.fc-mail-body{padding:16px}.fc-mail-columns{grid-template-columns:minmax(0,1fr)}.fc-mail-dialog input,.fc-mail-dialog select,.fc-mail-dialog textarea{font-size:16px}.fc-mail-head h2{font-size:18px}.fc-mail-context{font-size:13px}.fc-mail-dialog textarea{min-height:160px}}
.fc-mail-auth-help { padding: 14px 24px; background: #eef5f2; }
.fc-mail-auth-help p { margin: 0 0 8px; }
.fc-mail-auth-help a { display: inline-block; padding: 12px 0; margin-right: 16px; }
.fc-mail-auth-help button { min-height: 44px; padding: 10px 14px; }

/* Keep navigation outside the status bar and scrolling content on iPhone. */
.fc-mail-back{display:none}
@media(max-width:700px){
 .fc-mail-dialog[open]{display:flex;flex-direction:column;overflow:hidden;padding:0 0 env(safe-area-inset-bottom,0px);max-height:100dvh}
 .fc-mail-dialog>.fc-mail-head{position:relative;flex:none;min-height:calc(56px + env(safe-area-inset-top,0px));padding:calc(6px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 6px max(12px,env(safe-area-inset-left,0px));gap:8px}
 .fc-mail-head>div,.fc-mail-head>h2{flex:1;min-width:0;overflow-wrap:anywhere}
 .fc-mail-head>div>p{display:none}
 .fc-mail-dialog .fc-mail-head>.fc-mail-back{display:inline-flex;align-items:center;gap:6px;flex:none;min-width:68px;min-height:44px;border:0;background:transparent;padding:8px 4px}
 .fc-mail-back::before{content:"";width:10px;height:10px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
 .fc-mail-head>button:last-child:not(.fc-mail-back){display:none}
 .fc-mail-dialog>.fc-mail-body,.fc-mail-dialog>.fc-w-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .fc-mail-dialog>.fc-mail-status{flex:none;max-height:20dvh;overflow:auto;margin:0}
}

.fc-proposal-review{margin:0 0 20px;padding:16px;border:1px solid #d4d7d5;border-radius:8px;background:#f4f6f5;color:#202322;line-height:1.7}
.fc-proposal-review h3{margin:0 0 8px}.fc-proposal-review ul{padding-left:20px}.fc-proposal-review details{margin-top:12px}.fc-proposal-review a{display:block;padding:8px 0;overflow-wrap:anywhere}.fc-proposal-review p{white-space:pre-wrap}.fc-proposal-body{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}
