/* Document details: review card, Lease and Loan cards, owner invites. Tokens follow DESIGN.md. */
.fd-review,.fd-card,.fd-invite,.fd-dialog{--ev:#164f43;--ink:#173b32;--mut:#566b63;--org:#a94425;--line:#dce5df;--soft:#edf3ef;--canvas:#f5f7f4;font-family:'DM Sans',sans-serif;color:var(--ink)}
.fd-review{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 14px 36px rgba(23,59,50,.08);overflow:hidden;animation:fd-in .3s ease-out}
@keyframes fd-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.fd-review>header,.fd-card>header{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start}
.fd-review>header{padding:18px 20px;background:linear-gradient(135deg,#f4f9f6,#fff);border-bottom:1px solid var(--line)}
.fd-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--ev);color:#fff;flex:none}
.fd-mark svg,.fd-owners h4 svg,.fd-invite h4 svg,.fd-contact svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fd-review header small,.fd-card header small{display:block;font:600 11px/1.4 'DM Sans',sans-serif;letter-spacing:.09em;color:var(--org)}
.fd-review h3{margin:2px 0 2px;font:600 20px/1.25 'Fraunces',serif}
.fd-review header p{margin:0;color:var(--mut);font-size:13px}
.fd-count{padding:4px 10px;border-radius:999px;background:var(--soft);color:var(--ev);font:600 12px/1.4 'DM Sans',sans-serif;white-space:nowrap}
.fd-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;padding:16px 20px 6px}
.fd-field{display:flex;flex-direction:column;gap:4px;padding:8px 0;min-width:0}
.fd-field.wide{grid-column:1/-1}
.fd-label{display:flex;align-items:center;gap:6px;font:600 12px/1.3 'DM Sans',sans-serif;color:var(--mut);text-transform:uppercase;letter-spacing:.04em}
.fd-label i{font-style:normal;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--ev);color:#fff;font-size:10px}
.fd-field input,.fd-field select,.fd-owner input{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid #d3dfd6;border-radius:9px;background:#fff;font:500 15px 'DM Sans',sans-serif;color:var(--ink)}
.fd-field input:focus,.fd-field select:focus,.fd-owner input:focus{outline:2px solid #298783;outline-offset:1px;border-color:#298783}
.fd-field.found input,.fd-field.found select{background:#f8fbf9;border-color:#b8d3c5}
.fd-field.missing input{border-style:dashed}
.fd-field.bad input,.fd-field.bad select{border-color:#a34226;background:#fff7f3}
.fd-in{display:flex;align-items:center;gap:6px}.fd-in.money>span{color:var(--mut);font-weight:600}.fd-in select{width:auto;flex:none}
.fd-ev{display:block;font-size:12px;line-height:1.45;color:#667a70;font-style:italic;overflow-wrap:anywhere}
.fd-ev.none{font-style:normal;color:#8a9b93}
.fd-owners,.fd-calc{margin:6px 20px 0;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}
.fd-owners h4,.fd-calc h4,.fd-invite h4{display:flex;align-items:center;gap:8px;margin:0 0 4px;font:600 15px 'DM Sans',sans-serif}
.fd-calc h4 small{margin-left:auto;font-weight:500;font-size:12px;color:var(--mut)}
.fd-owners>p{margin:0 0 10px;color:var(--mut);font-size:13px}
.fd-owner{display:grid;grid-template-columns:1fr 110px auto;gap:8px;align-items:center;margin-top:8px}.fd-owner .fd-ev{grid-column:1/-1}
.fd-in.pct span{color:var(--mut)}
.fd-x{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:var(--mut);font-size:18px;cursor:pointer}.fd-x:hover{background:#fff}
.fd-link{margin-top:8px;border:0;background:none;color:var(--ev);font:600 14px 'DM Sans',sans-serif;cursor:pointer;padding:6px 0;text-decoration:underline;text-underline-offset:3px}
.fd-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
.fd-tiles div{padding:12px;border-radius:12px;background:#fff;border:1px solid var(--line);min-width:0}
.fd-tiles span{display:block;font-size:12px;color:var(--mut)}.fd-tiles strong{display:block;margin-top:2px;font:600 19px/1.25 'DM Sans',sans-serif;color:var(--ink);overflow-wrap:anywhere}.fd-tiles strong em{font-style:normal;font-size:12px;font-weight:500;color:var(--mut);margin-left:2px}.fd-tiles small{display:block;margin-top:2px;font-size:12px;color:var(--mut)}
.fd-calc-empty{margin:4px 0 0;color:var(--mut);font-size:13px}
.fd-table{margin-top:12px;max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}
.fd-table table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.fd-table th{position:sticky;top:0;background:#f4f8f5;text-align:right;padding:8px 10px;font-weight:600;color:var(--mut);font-size:12px}
.fd-table td{text-align:right;padding:7px 10px;border-top:1px solid #eef3ef}.fd-table th:nth-child(-n+2),.fd-table td:nth-child(-n+2){text-align:left}
.fd-err{margin:8px 20px 0;color:#a34226;font-size:13px;min-height:1em}
.fd-review>footer,.fd-invite>footer{display:flex;align-items:center;gap:12px;padding:12px 20px 18px}
.fd-save{border:0;border-radius:10px;background:var(--org);color:#fff;font:600 15px 'DM Sans',sans-serif;padding:12px 22px;min-height:46px;cursor:pointer;box-shadow:0 8px 18px rgba(169,68,37,.22)}
.fd-save:hover{background:#923a1f}.fd-save:disabled{background:#d9c3ba;box-shadow:none;cursor:progress}
.fd-skip{border:0;background:none;color:var(--mut);font:500 14px 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* Owner invites */
.fd-invite{padding:18px 20px 0;border:1px solid var(--line);border-radius:16px;background:#fff}
.fd-invite>p{margin:0 0 8px;color:var(--mut);font-size:13px}
.fd-invite-row{display:grid;grid-template-columns:auto 1fr minmax(240px,1.2fr);gap:12px;align-items:center;padding:12px 0;border-top:1px solid #eef3ef}
.fd-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--soft);color:var(--ev);font:600 13px 'DM Sans',sans-serif}
.fd-invite-name strong{display:block;font-size:15px}.fd-invite-name small{color:var(--mut);font-size:12px}
.fd-invite-form{display:flex;gap:6px}.fd-invite-form input{flex:1;min-width:0;min-height:38px;padding:6px 10px;border:1px solid #d3dfd6;border-radius:9px;font:inherit}
.fd-invite-form button,.fd-invite-done button{border:1px solid #c8d9cf;border-radius:9px;background:#fff;color:var(--ev);font:600 13px 'DM Sans',sans-serif;padding:8px 12px;cursor:pointer;white-space:nowrap}
.fd-invite-form button{background:var(--ev);border-color:var(--ev);color:#fff}
.fd-invite-done{display:flex;gap:6px;flex-wrap:wrap}
.fd-invite-status{grid-column:2/-1;margin:0;font-size:13px;color:#3d6555;min-height:0}
/* Where details live: Company and Debt pages */
.fd-section{margin:0 0 22px}
.fd-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 10px}
.fd-head h2{margin:0;font:600 20px 'DM Sans',sans-serif;color:#173b32}
.fd-card{padding:20px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,#fff,#f7faf8);box-shadow:0 10px 28px rgba(23,59,50,.06);margin-bottom:12px}
.fd-card h3{margin:2px 0 4px;font:600 21px/1.25 'Fraunces',serif}
.fd-card header p{margin:0;color:var(--mut);font-size:14px}
.fd-contact{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px!important}
.fd-contact span{font-weight:600;color:var(--ink)}
.fd-contact a{display:inline-flex;align-items:center;gap:5px;color:var(--ev);text-decoration:none;font-weight:500}.fd-contact a:hover{text-decoration:underline}
.fd-contact svg{width:15px;height:15px}
.fd-edit,.fd-cta{border:1px solid #c8d9cf;border-radius:9px;background:#fff;color:var(--ev);font:600 13px 'DM Sans',sans-serif;padding:8px 14px;cursor:pointer;white-space:nowrap}
.fd-cta{background:var(--org);border-color:var(--org);color:#fff;padding:10px 16px;font-size:14px}.fd-cta:hover{background:#923a1f}
.fd-term{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:16px}
.fd-term span{display:block;font-size:12px;color:var(--mut)}.fd-term strong{font-size:15px}
.fd-term>div:last-child{text-align:right}
.fd-bar{height:8px;border-radius:8px;background:#e3ebe6;overflow:hidden}.fd-bar i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#164f43,#2a7a66)}
.fd-term-note{margin:8px 0 0;color:var(--mut);font-size:13px}
.fd-sched{margin-top:14px}.fd-sched summary{cursor:pointer;font-weight:600;color:var(--ev);padding:6px 0}.fd-sched p{margin:4px 0 0;font-size:12px;color:var(--mut)}
.fd-source{margin-top:14px;padding-top:10px;border-top:1px solid #eef3ef;font-size:12px;color:#667a70}
.fd-card.empty{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;border-style:dashed;background:#fff}
.fd-card.empty h3{font-size:18px}.fd-card.empty p{margin:0;color:var(--mut);font-size:14px}

/* Dialog for adding from a page */
.fd-dialog{position:fixed;inset:0;margin:auto;height:fit-content;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:18px;background:transparent;overflow:visible}
.fd-dialog::backdrop{background:rgba(17,40,33,.42);backdrop-filter:blur(3px)}
.fd-dialog-in{position:relative;max-height:calc(100dvh - 32px);overflow:auto;padding:22px;border-radius:18px;background:#f7faf8;box-shadow:0 30px 80px rgba(18,52,43,.25)}
.fd-close{position:absolute;right:12px;top:10px;z-index:2;width:36px;height:36px;border:0;border-radius:8px;background:transparent;font-size:22px;color:#566b63;cursor:pointer}.fd-close:hover{background:#edf3ef}
.fd-pick h3,.fd-none h3{margin:0 0 4px;font:600 21px 'Fraunces',serif;color:#173b32}.fd-pick>p,.fd-none>p{margin:0 0 14px;color:#566b63;font-size:14px}
.fd-dialog .fj-dropzone{position:relative;display:grid;justify-items:center;gap:6px;padding:26px 20px;border:1.5px dashed #9fbbae;border-radius:16px;background:#fff;text-align:center;cursor:pointer}
.fd-dialog .fj-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.fd-dialog .fj-dropzone small{color:#566b63}.fd-dialog .fj-dropzone em{font-style:normal;font-weight:600;color:#164f43}
.fd-dialog .fj-consent{display:flex;gap:10px;margin:12px 0 0;font-size:14px}.fd-dialog .fj-err{color:#a34226;font-size:13px;min-height:1em}
.fd-dialog .fj-go{border:0;border-radius:10px;background:#a94425;color:#fff;font:600 15px 'DM Sans',sans-serif;padding:11px 20px;cursor:pointer}.fd-dialog .fj-go:disabled{background:#d9c3ba;cursor:not-allowed}
/* Inside the journey conversation */
.fj-turn .fd-review,.fj-turn .fd-invite{margin-top:4px}
@media (max-width:760px){.fd-grid{grid-template-columns:1fr}.fd-tiles{grid-template-columns:1fr 1fr}.fd-invite-row{grid-template-columns:auto 1fr}.fd-invite-form,.fd-invite-done{grid-column:1/-1}.fd-card.empty{grid-template-columns:auto 1fr}.fd-card.empty .fd-cta{grid-column:1/-1}.fd-review>header{grid-template-columns:auto 1fr}.fd-count{grid-column:2;justify-self:start}.fd-owner{grid-template-columns:1fr 90px auto}}
@media (prefers-reduced-motion:reduce){.fd-review{animation:none}}
.fd-field .fd-ev{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
