/* 0.19.0 · Οικόγραμμα, χάρτες της πορείας, χάρτης τεκμηρίωσης, κεντρικό ερώτημα, πρόσωπα στη συνεδρία, αξιολογήσεις μία μία. Μόνο μπλε και γκρι. */
#therapy-flow .ecomap-box,#therapy-flow .ins-card{position:relative;display:grid;gap:12px}
#therapy-flow .eco-wrap{border:1px solid var(--line-2);border-radius:12px;background:var(--white);padding:8px;display:flex;justify-content:center}
#therapy-flow .eco-svg{width:100%;max-width:560px;height:auto;display:block;font-family:inherit}
#therapy-flow .eco-l{fill:none;stroke:var(--blue);stroke-width:1.6;stroke-linejoin:round}
#therapy-flow .eco-l.strong{stroke-width:4.5}
#therapy-flow .eco-l.tenuous{stroke-dasharray:6 5}
#therapy-flow .eco-arrowhead{fill:var(--blue)}
#therapy-flow .eco-hit{fill:none;stroke:transparent;stroke-width:16}
#therapy-flow .eco-link:focus{outline:none}
#therapy-flow .eco-link:hover .eco-l,#therapy-flow .eco-link:focus .eco-l{stroke:var(--blue-dark)}
#therapy-flow .eco-word{opacity:0;transition:opacity .15s;pointer-events:none}
#therapy-flow .eco-word rect{fill:#fff;stroke:var(--blue-soft)}
#therapy-flow .eco-word text{font-size:12px;fill:var(--blue-dark);font-weight:600}
#therapy-flow .eco-link:hover .eco-word,#therapy-flow .eco-link:focus .eco-word{opacity:1}
#therapy-flow .eco-node circle{fill:#fff;stroke:#55636f;stroke-width:1.5}
#therapy-flow .eco-name{font-size:12px;font-weight:600;fill:var(--ink)}
#therapy-flow .eco-area{font-size:10px;fill:var(--muted)}
#therapy-flow .eco-client circle{fill:var(--blue-tint);stroke:var(--blue-dark);stroke-width:1.75}
#therapy-flow .eco-client circle.inner{fill:none;stroke-width:1.25}
#therapy-flow .eco-client text{font-size:12.5px;font-weight:700;fill:var(--blue-dark)}
#therapy-flow .eco-legend{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0}
#therapy-flow .eco-q{display:inline-flex;align-items:center;gap:4px}
#therapy-flow .eco-list>summary,#therapy-flow .eco-edit>summary,#therapy-flow .ins-list>summary{cursor:pointer;color:var(--blue-dark);font-weight:500}
#therapy-flow .eco-list ul,#therapy-flow .ins-list ul{margin:8px 0 0;padding-left:20px;display:grid;gap:4px;font-size:14px}
#therapy-flow .eco-rows{display:grid;gap:10px;margin:10px 0}
#therapy-flow .eco-row{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 1.2fr 1.6fr auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line-2);border-radius:10px;background:var(--white)}
#therapy-flow .eco-row .field{margin:0}
#therapy-flow .eco-row select,#therapy-flow .eco-row input{width:100%}
/* χάρτες της πορείας */
#therapy-flow .ins-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line-2);padding-bottom:10px}
#therapy-flow .ins-tabs button{min-height:34px;padding:0 14px;border-radius:999px;font-size:13px;background:var(--white)}
#therapy-flow .ins-tabs button[aria-selected=true]{background:var(--blue);border-color:var(--blue);color:#fff}
#therapy-flow .ins-body{display:grid;gap:12px;min-width:0}
#therapy-flow .ins-pick{margin:0}
#therapy-flow .ins-pick select{width:auto;max-width:320px}
#therapy-flow .ins-map-wrap{border:1px solid var(--line-2);border-radius:12px;background:var(--white);display:flex;justify-content:center;padding:6px;overflow:hidden}
#therapy-flow .ins-map{width:100%;max-width:640px;height:auto;display:block;font-family:inherit;overflow:visible}
#therapy-flow .ins-edge{fill:none;stroke:var(--blue-soft);opacity:.9;transition:opacity .15s}
#therapy-flow .ins-edge.on{stroke:var(--blue);opacity:1}
#therapy-flow .ins-node{cursor:pointer;transition:opacity .15s}
#therapy-flow .ins-node:focus{outline:none}
#therapy-flow .ins-node rect,#therapy-flow .ins-node circle,#therapy-flow .ins-node path{fill:#fff;stroke:var(--blue-dark);stroke-width:1.6}
#therapy-flow .ins-node.k-pillar rect{fill:var(--blue-tint)}
#therapy-flow .ins-node.k-person circle{fill:#55636f;stroke:#55636f}
#therapy-flow .ins-node.on rect,#therapy-flow .ins-node.on circle,#therapy-flow .ins-node.on path,#therapy-flow .ins-node:hover path,#therapy-flow .ins-node:focus path,#therapy-flow .ins-node:hover rect,#therapy-flow .ins-node:focus rect{stroke-width:2.6;fill:var(--blue)}
#therapy-flow .ins-node text{font-size:12px;fill:var(--ink);font-weight:600}
#therapy-flow .ins-n{fill:var(--muted);font-weight:400;font-size:11px;color:var(--muted)}
#therapy-flow .ins-legend{display:flex;gap:4px 16px;flex-wrap:wrap;margin:0}
#therapy-flow .ins-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;border:1px solid var(--blue-soft);background:var(--white);color:var(--blue-dark);font-size:13px;font-weight:600;min-height:0;margin:2px 4px 2px 0}
#therapy-flow .ins-chip.small{font-size:12px;padding:1px 8px;font-weight:500}
#therapy-flow .ins-chip.k-pillar{background:var(--blue-tint)}
#therapy-flow .ins-chip.k-person{border-color:#b7c0c7;color:var(--ink)}
#therapy-flow button.ins-chip{cursor:pointer}
#therapy-flow .ins-same{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface)}
#therapy-flow .ins-same h4{margin:0;font-size:15px}
#therapy-flow .ins-answer,#therapy-flow .rate-answer{margin:0;padding:10px 14px;border-left:3px solid var(--blue);background:var(--blue-tint);border-radius:0 10px 10px 0;font-size:14px;line-height:1.6}
#therapy-flow .ins-with{margin:0;line-height:2}
#therapy-flow .ins-sessions,#therapy-flow .ins-dsess{list-style:none;margin:0;padding:0;display:grid;gap:6px}
#therapy-flow .ins-sessions li,#therapy-flow .ins-dsess li{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:8px;align-items:baseline;font-size:14px;padding:6px 0;border-top:1px solid var(--line-2)}
#therapy-flow .ins-dsess li{grid-template-columns:52px minmax(0,1fr) auto;font-size:13px}
#therapy-flow .ins-tags{display:block;margin-top:2px}
#therapy-flow .ins-persons{list-style:none;margin:0;padding:0;display:grid;gap:4px}
#therapy-flow .ins-persons li{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:12px;align-items:center;padding:6px 0;border-top:1px solid var(--line-2)}
#therapy-flow .ins-pname{display:grid;gap:0;text-align:left;border:0;background:transparent;padding:4px 6px;border-radius:8px}
#therapy-flow .ins-pname:hover{background:var(--blue-tint)}
#therapy-flow .ins-strip{display:block;max-width:100%}
#therapy-flow .ins-strip rect.on{fill:var(--blue)}
#therapy-flow .ins-strip rect.off{fill:#fff;stroke:#c9d2d8}
#therapy-flow .ins-dhead{display:flex;flex-wrap:wrap;gap:10px;align-items:end;justify-content:space-between}
#therapy-flow .ins-dhead .field{margin:0}
#therapy-flow .ins-dhead select{width:auto}
#therapy-flow .ins-win{display:flex;gap:6px}
#therapy-flow .ins-win button{min-height:34px;padding:0 12px;border-radius:999px;font-size:13px;background:var(--white)}
#therapy-flow .ins-win button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}
#therapy-flow .ins-tpcard{display:grid;gap:4px;padding:12px 16px;border:1.5px solid var(--blue);border-radius:12px;background:var(--white);justify-items:start}
#therapy-flow .ins-diptych{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-2);border-radius:12px;overflow:hidden}
#therapy-flow .ins-col{padding:14px 16px;display:grid;gap:10px;align-content:start;min-width:0}
#therapy-flow .ins-col+.ins-col{border-left:1px solid var(--line-2);background:var(--surface)}
#therapy-flow .ins-col h4{margin:0;font-size:12px;letter-spacing:.6px;color:var(--blue-dark)}
#therapy-flow .ins-path{list-style:none;margin:0;padding:0 0 0 6px;display:grid;gap:0}
#therapy-flow .ins-ver{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:10px 0;position:relative}
#therapy-flow .ins-ver>div{display:grid;gap:4px}
#therapy-flow .ins-vn{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--blue);color:var(--blue-dark);font-weight:700;background:#fff;z-index:1}
#therapy-flow .ins-ver.now .ins-vn{background:var(--blue);color:#fff}
#therapy-flow .ins-between{margin-left:14px;padding:4px 0 4px 26px;border-left:2px dashed var(--blue-soft)}
#therapy-flow .ins-between ul{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:13px;color:var(--muted)}
#therapy-flow .ins-between li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px}
/* σύνοψη: κεντρικό ερώτημα, χάρτης τεκμηρίωσης */
#therapy-flow .central-text{margin:0;font-family:var(--notes);font-size:17px;color:var(--ink)}
#therapy-flow .central-q textarea{min-height:64px}
#therapy-flow .docs-map>summary{cursor:pointer;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;list-style:none}
#therapy-flow .docs-map>summary::-webkit-details-marker{display:none}
#therapy-flow .docs-map>summary h3{margin:0}
#therapy-flow .docs-map>summary::before{content:'▸';color:var(--muted)}
#therapy-flow .docs-map[open]>summary::before{content:'▾'}
#therapy-flow .docs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-top:12px}
#therapy-flow .docs-group{border:1px solid var(--line-2);border-radius:10px;padding:10px 12px;background:var(--white)}
#therapy-flow .docs-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
#therapy-flow .docs-head h4{margin:0 0 6px;font-size:13px}
#therapy-flow .docs-group ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}
#therapy-flow .docs-group li{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:6px;font-size:13px;align-items:baseline}
#therapy-flow .docs-group li.off{color:var(--muted)}
#therapy-flow .docs-mark{color:var(--blue)}
#therapy-flow .docs-group li.off .docs-mark{color:#a9b3ba}
#therapy-flow .docs-x{font-size:12px;color:var(--muted);text-align:right}
/* φόρμα συνεδρίας: πρόσωπα */
#therapy-flow .session-persons{border:1px solid var(--line-2);border-radius:12px;padding:10px 14px 12px;margin:0 0 14px}
#therapy-flow .session-persons legend{font-weight:600;padding:0 4px}
#therapy-flow .person-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
#therapy-flow .person-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px 4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--white);font-size:14px;cursor:pointer}
#therapy-flow .person-chip input{width:16px;height:16px;margin:0;accent-color:var(--blue)}
#therapy-flow .person-chip:has(input:checked){background:var(--blue-tint);border-color:var(--blue-soft);color:var(--blue-dark);font-weight:600}
/* αξιολογήσεις μία μία */
#therapy-flow .rate-mode{display:flex;gap:6px}
#therapy-flow .rate-mode button,#therapy-flow .rate-pick button{min-height:32px;padding:0 12px;border-radius:999px;font-size:13px;background:var(--white)}
#therapy-flow .rate-mode button[aria-pressed=true],#therapy-flow .rate-pick button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}
#therapy-flow .rate-pick{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
#therapy-flow .rate-n{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--blue-tint);color:var(--blue-dark);font-size:11px;font-weight:700;margin-left:2px}
#therapy-flow .one-host{overflow-x:auto;margin-top:8px;-webkit-overflow-scrolling:touch}
#therapy-flow .rating-chart.one{display:block;max-width:none}
@media (max-width:767px){
 #therapy-flow .eco-row{grid-template-columns:1fr 1fr}
 #therapy-flow .eco-row .eco-notes{grid-column:1/-1}
 #therapy-flow .ins-diptych{grid-template-columns:1fr}
 #therapy-flow .ins-col+.ins-col{border-left:0;border-top:1px solid var(--line-2)}
 #therapy-flow .ins-persons li{grid-template-columns:1fr}
 #therapy-flow .ins-sessions li{grid-template-columns:1fr auto}
 #therapy-flow .ins-sessions .tl-date{grid-column:1/-1}
 #therapy-flow .ins-between li{grid-template-columns:1fr}
}
@media print{#therapy-flow .ins-tabs,#therapy-flow .eco-edit,#therapy-flow .rate-mode,#therapy-flow .rate-pick{display:none}}
