/* Figures for "Tips to give a great presentation". The figure shell comes from /essays/eth/figures.css. */
.gp-fig button:focus-visible,.gp-fig input:focus-visible,.gp-fig select:focus-visible{outline:2px solid var(--mark);outline-offset:2px;}
.gp-row{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;font-family:'Inter',sans-serif;font-size:13.5px;margin:0 0 10px;}
.gp-row label{display:flex;gap:8px;align-items:center;}
.gp-row input[type=range]{width:180px;accent-color:#1a1a17;}
.gp-row output{font-weight:700;min-width:58px;}
.gp-tog{display:flex;flex-wrap:wrap;gap:6px;}
.gp-tog button,.gp-act button{font-family:'Inter',sans-serif;font-size:13px;padding:6px 11px;border-radius:6px;border:1px solid var(--hair);background:none;color:var(--ink);cursor:pointer;}
.gp-tog button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.gp-act{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;align-items:center;}
.gp-act button.solid{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.gp-note{font-family:'Inter',sans-serif;font-size:12.5px;color:var(--quiet);}

/* talk planner */
.gp-bar{display:flex;height:46px;border:1.4px solid var(--ink);border-radius:6px;overflow:hidden;font-family:'Inter',sans-serif;margin:6px 0 4px;}
.gp-bar span{display:flex;flex-direction:column;justify-content:center;padding:0 8px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;transition:flex-basis .5s cubic-bezier(.2,.8,.2,1);}
.gp-bar span small{font-weight:400;font-size:11px;}
.gp-bar .o{background:var(--eth-card);}
.gp-bar .m{background:var(--mark);color:#1a1a17;border-left:1.4px solid var(--ink);border-right:1.4px solid var(--ink);}
.gp-bar .c{background:var(--eth-card);}
.gp-bar .q{background:var(--paper);border-left:1.4px dashed var(--ink);color:var(--quiet);}
.gp-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;font-family:'Inter',sans-serif;}
.gp-card div{border:1px solid var(--ink);border-radius:6px;padding:9px 10px;background:var(--paper);}
.gp-card b{display:block;font-family:'Fraunces Variable',Georgia,serif;font-size:22px;font-weight:500;line-height:1.1;}
.gp-card span{font-size:12px;color:var(--quiet);}
.gp-cue{list-style:none;margin:10px 0 0;padding:0;font-family:'Inter',sans-serif;font-size:13px;line-height:1.5;}
.gp-cue li{padding:3px 0;border-bottom:1px solid var(--hair);}
.gp-cue li b{display:inline-block;min-width:70px;}

/* panels */
.gp-panel{margin-top:10px;padding:14px 16px;border:1px solid var(--ink);border-radius:8px;background:var(--eth-card);font-family:'Inter',sans-serif;min-height:130px;}
.gp-panel .h{font-family:'Fraunces Variable',Georgia,serif;font-size:20px;font-weight:500;margin:0 0 6px;}
.gp-panel dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:5px 12px;margin:0;font-size:13.5px;line-height:1.45;}
.gp-panel dt{font-weight:600;}
.gp-panel dd{margin:0;}
.gp-panel ol{margin:0;padding-left:20px;font-size:13.5px;line-height:1.5;}
.gp-panel p{font-size:13.5px;line-height:1.5;margin:0 0 6px;}
.gp-lab{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--quiet);margin:8px 0 4px;}

/* filler spotter */
.gp-text{font-family:'Fraunces Variable',Georgia,serif;font-size:19px;line-height:1.9;padding:14px 16px;border:1px solid var(--ink);border-radius:8px;background:var(--paper);}
.gp-w{font:inherit;color:inherit;background:none;border:none;padding:1px 2px;margin:0 -1px;border-radius:4px;cursor:pointer;}
.gp-w:hover{background:var(--eth-card);}
.gp-w[aria-pressed="true"]{background:var(--ink);color:var(--paper);}
.gp-w.hit{background:var(--mark);color:#1a1a17;}
.gp-w.miss{box-shadow:inset 0 -3px 0 #b3261e;}
.gp-w.wrong{text-decoration:line-through;background:none;color:var(--quiet);}
.gp-score{font-family:'Inter',sans-serif;font-size:13.5px;line-height:1.5;min-height:22px;margin:10px 0 0;}

/* communication figures (4 Nov 2026) */
.gp-chain{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;font-family:'Inter',sans-serif;font-size:11.5px;text-align:center;margin:8px 0 0;}
.gp-chain span{border:1.4px solid var(--ink);border-radius:6px;padding:8px 4px;background:var(--paper);line-height:1.25;transition:background-color .3s;}
.gp-chain span small{display:block;color:var(--quiet);font-size:10.5px;}
.gp-chain span.hit{background:var(--mark);color:#1a1a17;}
.gp-chain span.hit small{color:#1a1a17;}
.gp-fbline{font-family:'Inter',sans-serif;font-size:11.5px;color:var(--quiet);text-align:center;border:1.4px dashed var(--hair);border-top:none;border-radius:0 0 8px 8px;padding:4px;margin:0 10% 8px;opacity:.35;transition:opacity .3s,border-color .3s;}
.fb-on .gp-fbline{opacity:1;border-color:var(--ink);color:var(--ink);}
.gp-msg{display:grid;grid-template-columns:90px minmax(0,1fr);gap:4px 10px;font-family:'Inter',sans-serif;font-size:13px;margin:8px 0 0;}
.gp-msg b{font-weight:600;}
.gp-recv,.gp-sent{font-family:'Fraunces Variable',Georgia,serif;font-size:17px;}
.gp-verdict{font-family:'Inter',sans-serif;font-size:13.5px;line-height:1.5;margin:10px 0 0;min-height:60px;}
.gp-ta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px;align-items:start;}
.gp-ta svg{width:100%;height:auto;color:var(--ink);}
.gp-ta svg .st{fill:var(--paper);stroke:var(--ink);stroke-width:1.4;transition:fill .3s;}
.gp-ta svg .st.on{fill:var(--mark);}
.gp-ta svg .k{font-family:'Inter',sans-serif;font-size:15px;font-weight:700;fill:var(--ink);}
.gp-ta svg .st.on+.k{fill:#1a1a17;}
.gp-ta svg .lab{font-family:'Inter',sans-serif;font-size:12px;fill:var(--quiet);}
.gp-ta svg .ar{stroke:currentColor;stroke-width:2;fill:none;}
.gp-ta svg .ar.x{stroke-dasharray:6 4;}
.gp-resp{display:flex;flex-direction:column;gap:6px;margin-top:4px;}
.gp-resp button{font-family:'Fraunces Variable',Georgia,serif;font-size:15px;text-align:left;padding:7px 10px;border-radius:6px;border:1px solid var(--hair);background:none;color:var(--ink);cursor:pointer;}
.gp-resp button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper);}
.gp-say{display:flex;flex-direction:column;gap:4px;font-family:'Fraunces Variable',Georgia,serif;font-size:15.5px;margin:10px 0 0;}
.gp-say b{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;}
.gp-jowrap{display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:20px auto;gap:4px;font-family:'Inter',sans-serif;}
.gp-jowrap .ax{font-size:11px;color:var(--quiet);display:flex;justify-content:space-around;}
.gp-jowrap .ax.side{writing-mode:vertical-rl;transform:rotate(180deg);flex-direction:row;}
.gp-jo{display:grid;height:260px;border:1.4px solid var(--ink);border-radius:8px;overflow:hidden;transition:grid-template-columns .25s,grid-template-rows .25s;}
.gp-jo div{padding:8px 10px;font-size:12.5px;line-height:1.3;overflow:hidden;border:0.7px solid var(--ink);}
.gp-jo div b{display:block;font-family:'Fraunces Variable',Georgia,serif;font-size:16px;font-weight:500;}
.gp-jo .op{background:var(--mark);color:#1a1a17;}
.gp-jo .bl,.gp-jo .hi{background:var(--eth-card);}
.gp-jo .un{background:var(--paper);color:var(--quiet);}
.gp-pol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 0;font-family:'Inter',sans-serif;}
.gp-pol button{border:1.4px solid var(--ink);border-radius:8px;background:var(--paper);color:var(--ink);padding:12px;text-align:left;font:inherit;font-size:12.5px;cursor:pointer;transition:background-color .3s;}
.gp-pol button b{display:block;font-family:'Fraunces Variable',Georgia,serif;font-size:19px;font-weight:500;}
.gp-pol button.on{background:var(--mark);color:#1a1a17;}
.gp-polax{display:flex;justify-content:space-between;font-family:'Inter',sans-serif;font-size:11px;color:var(--quiet);margin:4px 2px 0;}

@media (max-width:560px){
  .gp-chain{font-size:10.5px;}
  .gp-chain span small{display:none;}
  .gp-ta{grid-template-columns:minmax(0,1fr);}
  .gp-jo{height:220px;}
  .gp-card{grid-template-columns:minmax(0,1fr);}
  .gp-panel dl{grid-template-columns:minmax(0,1fr);}
  .gp-text{font-size:17px;}
  .gp-bar span small{display:none;}
}
@media (prefers-reduced-motion:reduce){.gp-bar span,.gp-chain span,.gp-jo,.gp-pol button,.gp-ta svg .st{transition:none;}}
