/* DayHarmony Feedback Button - floating action button and modal */
#dhf-fab{position:fixed;right:18px;bottom:18px;z-index:99990;display:inline-flex;align-items:center;gap:8px;background:#4057ab;color:#fff;border:0;border-radius:999px;padding:13px 20px;font:700 14px/1 'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;cursor:pointer;box-shadow:0 10px 28px rgba(64,87,171,.38);transition:transform .18s,box-shadow .18s}
#dhf-fab:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(64,87,171,.45)}
#dhf-fab span:first-child{font-size:18px}
#dhf-overlay{position:fixed;inset:0;z-index:99999;background:rgba(25,41,84,.55);display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}
#dhf-overlay[hidden]{display:none}
#dhf-modal{background:#fff;border-radius:20px;max-width:480px;width:100%;padding:28px;box-shadow:0 30px 80px rgba(25,41,84,.25);max-height:90vh;overflow-y:auto;font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.dhf-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.dhf-modal-head h2{margin:0;font-size:22px;color:#192954;letter-spacing:-.5px}
#dhf-close{background:#f2f3f7;border:0;border-radius:50%;width:34px;height:34px;font-size:20px;line-height:1;color:#6e7792;cursor:pointer}
#dhf-close:hover{background:#e7e9f2;color:#192954}
.dhf-sub{margin:0 0 18px;font-size:13px;color:#6e7792;line-height:1.6}
.dhf-label{display:block;font-size:12px;font-weight:700;color:#34466d;margin:14px 0 6px}
.dhf-opt{font-weight:400;color:#9aa2b6}
.dhf-field{width:100%;border:1px solid #e7e9f2;border-radius:10px;padding:11px 13px;font:400 14px/1.5 'DM Sans',sans-serif;color:#192954;background:#fdfcfb;box-sizing:border-box}
.dhf-field:focus{outline:2px solid #4057ab;outline-offset:1px;border-color:#4057ab}
textarea.dhf-field{resize:vertical;min-height:90px}
.dhf-row{display:flex;gap:12px}
.dhf-col{flex:1;min-width:0}
.dhf-submit{width:100%;margin-top:18px;background:#4057ab;color:#fff;border:0;border-radius:10px;padding:14px;font:800 14px 'DM Sans',sans-serif;cursor:pointer;transition:background .18s}
.dhf-submit:hover{background:#344f9b}
.dhf-submit:disabled{opacity:.6;cursor:wait}
.dhf-error{color:#b7536c;font-size:12px;margin:10px 0 0}
#dhf-thanks{text-align:center;padding:12px 0 4px}
.dhf-thanks-icon{font-size:44px;margin-bottom:10px}
#dhf-thanks h3{margin:0 0 8px;color:#192954;font-size:20px}
#dhf-thanks p{color:#6e7792;font-size:13px;line-height:1.7;margin:0 0 6px}
@media(max-width:520px){.dhf-fab-label{display:none}#dhf-fab{padding:14px 16px}.dhf-row{flex-direction:column;gap:0}}
/* On the student app the bottom tab bar (.ld-nav) is fixed; lift the button above it so it never covers the tabs. */
body:has(.ld-nav) #dhf-fab{bottom:calc(96px + env(safe-area-inset-bottom, 0px))}
