/* DFS project assistant chat panel */
.dfs-chat{position:fixed;right:20px;bottom:20px;z-index:100000;font-family:var(--wp--preset--font-family--body,system-ui,sans-serif)}

.dfs-chat__fab{display:flex;align-items:center;gap:10px;background:var(--dfs-brown,#4A2A12);color:#fff;border:0;padding:14px 22px;font-weight:700;font-size:15px;box-shadow:0 14px 34px rgba(42,23,9,.28);cursor:pointer;transition:background .15s,transform .15s}
.dfs-chat__fab:hover{background:var(--dfs-brown-deep,#2A1709);transform:translateY(-1px)}
.dfs-chat__fab-dot{width:9px;height:9px;border-radius:50%;background:var(--dfs-lime,#8DC63F);flex:none}
.dfs-chat.is-open .dfs-chat__fab{display:none}

.dfs-chat__panel{position:fixed;right:20px;bottom:20px;width:min(400px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 100px));background:#fff;box-shadow:0 24px 64px rgba(31,26,20,.32);display:flex;flex-direction:column;overflow:hidden}
.dfs-chat__panel[hidden]{display:none}

.dfs-chat__head{background:var(--dfs-brown,#4A2A12);color:#fff;padding:18px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex:none}
.dfs-chat__head strong{display:block;font-family:var(--dfs-display,Archivo,sans-serif);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:15px}
.dfs-chat__head span{display:block;font-size:13px;color:#E9D8B4;margin-top:2px}
.dfs-chat__close{background:transparent;border:0;color:#fff;font-size:16px;cursor:pointer;line-height:1;padding:4px}

.dfs-chat__log{flex:1 1 auto;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:12px;background:var(--dfs-paper,#F6F2E9)}
.dfs-chat__msg{max-width:88%;padding:10px 14px;border-radius:2px;font-size:14.5px;line-height:1.5}
.dfs-chat__msg--bot{background:#fff;color:var(--dfs-ink,#1F1A14);align-self:flex-start;box-shadow:0 2px 6px rgba(31,26,20,.08)}
.dfs-chat__msg--user{background:var(--dfs-brown,#4A2A12);color:#fff;align-self:flex-end}
.dfs-chat__msg a{color:inherit}
.dfs-chat__typing{opacity:.7;font-style:italic}

.dfs-chat__callbtn{display:inline-block;margin-top:8px;background:var(--dfs-lime-deep,#4E7A12);color:#fff;font-weight:700;text-decoration:none;padding:10px 16px}

.dfs-chat__summary{margin:10px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13.5px}
.dfs-chat__summary dt{color:var(--dfs-mute,#6E6558);font-weight:600}
.dfs-chat__summary dd{margin:0}

.dfs-chat__input{flex:none;border-top:1px solid var(--dfs-line,#E6DFD0);padding:14px 16px;background:#fff}
.dfs-chat__chips{display:flex;flex-wrap:wrap;gap:8px}
.dfs-chat__chip{border:1.5px solid var(--dfs-brown,#4A2A12);background:#fff;color:var(--dfs-brown,#4A2A12);font-weight:600;font-size:13.5px;padding:9px 14px;cursor:pointer;transition:background .15s,color .15s}
.dfs-chat__chip:hover{background:var(--dfs-brown,#4A2A12);color:#fff}
.dfs-chat__chip--ghost{border-color:var(--dfs-line,#E6DFD0);color:var(--dfs-mute,#6E6558)}
.dfs-chat__chip--ghost:hover{background:var(--dfs-mute,#6E6558);color:#fff}

.dfs-chat__form{display:flex;gap:8px}
.dfs-chat__form input[type=text],.dfs-chat__form input[type=tel],.dfs-chat__form input[type=email],.dfs-chat__form textarea{flex:1;border:1.5px solid var(--dfs-line,#E6DFD0);padding:10px 12px;font-size:14.5px;font-family:inherit;resize:vertical;min-height:42px}
.dfs-chat__form input:focus,.dfs-chat__form textarea:focus{outline:2px solid var(--dfs-lime,#8DC63F);outline-offset:1px;border-color:var(--dfs-brown,#4A2A12)}
.dfs-chat__form button[type=submit]{background:var(--dfs-brown,#4A2A12);color:#fff;border:0;padding:0 16px;font-weight:700;font-size:13.5px;cursor:pointer;white-space:nowrap}
.dfs-chat__form button[type=submit]:hover{background:var(--dfs-brown-deep,#2A1709)}
.dfs-chat__form button[disabled]{opacity:.6;cursor:default}
.dfs-chat__form--summary{flex-direction:column;align-items:stretch;gap:10px}
.dfs-chat__consent{font-size:12.5px;color:var(--dfs-mute,#6E6558);display:flex;gap:8px;align-items:flex-start;line-height:1.4}
.dfs-chat__consent input{margin-top:3px}
.dfs-chat__consent a{color:var(--dfs-brown,#4A2A12)}
.dfs-chat__file{font-size:12.5px;color:var(--dfs-mute,#6E6558);display:flex;flex-direction:column;gap:4px}
.dfs-chat__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

.dfs-chat__ask{padding:0 20px 8px;background:var(--dfs-paper,#F6F2E9)}
.dfs-chat__link{background:transparent;border:0;color:var(--dfs-brown,#4A2A12);font-weight:600;font-size:13px;text-decoration:underline;cursor:pointer;padding:0}
.dfs-chat__note{font-size:12.5px;color:var(--dfs-mute,#6E6558);width:100%;margin:8px 0 0}

@media (max-width:480px){
	.dfs-chat{right:0;bottom:0;left:0}
	.dfs-chat__fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
	.dfs-chat__panel{right:0;bottom:0;left:0;width:100%;max-height:100vh;height:100vh}
}

/* Hide the FAB behind the mobile action bar's own Assistant button on small screens (avoids two floating buttons). */
@media (max-width:781px){
	.dfs-chat__fab{display:none}
}
