
:root{
  /* Cube Core faces */
  --lichen:#bacc6e;
  --sea-green:#6dc3c0;
  --aqua:#62c4e0;
  --lupin:#7b759b;
  --wild-heather:#ba6daa;
  --silver:#9c9a9a;
  /* Accent */
  --bright-teal:#0baebb;
  /* Structural neutrals */
  --deep-sea:#19242e;
  --core-navy:#334154;
  --arctic-navy:#51637b;
  --dark-grey:#28292a;
  --steel:#565a5b;
  --mist:#dedfdd;
  --frost:#e4ebef;
  --ice-blue:#d4e4ed;
  --ice-white:#ffffff;
  --deep-teal:#2b5a64;

  --ink:var(--deep-sea);
  --body:#33383d;
  --muted:var(--steel);
  --rule:var(--mist);
  --page-bg:#ffffff;
  --card:var(--ice-white);

  --face:var(--bright-teal);
  --face-tint:rgba(11,174,187,.10);

  --display:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --text:"Open Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;

  --header-h:60px;
  --bar-h:66px;
  --gut:22px;
  --cut:16px;
  --page-max:840px;
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%;overflow:hidden}
body{
  margin:0;background:var(--page-bg);color:var(--body);
  font-family:var(--text);font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;overscroll-behavior-y:none;
}
button{font-family:inherit;font-size:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--bright-teal);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- App frame ---------- */
#app{display:flex;flex-direction:column;height:100%;height:100dvh;overflow:hidden}

.topbar{
  position:sticky;top:0;z-index:40;height:var(--header-h);flex:0 0 auto;
  display:flex;align-items:center;gap:14px;padding:0 var(--gut);
  background:var(--bright-teal);color:#fff;
  padding-top:env(safe-area-inset-top);height:calc(var(--header-h) + env(safe-area-inset-top));
}
.brandmark{display:flex;align-items:center;gap:11px;min-width:0}
.brandmark svg{display:block;flex:0 0 auto}
.brandmark .wm{
  font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.16em;
  text-transform:uppercase;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.topbar .spacer{flex:1}
.savepill{
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:rgba(255,255,255,.72);display:flex;align-items:center;gap:7px;white-space:nowrap;
}
.savepill .dot{width:6px;height:6px;background:currentColor}
.savepill.is-saving{color:#fff}
.savepill.is-saved{color:rgba(255,255,255,.72)}

.progressline{flex:0 0 auto;height:3px;background:rgba(25,36,46,.12);position:sticky;top:calc(var(--header-h) + env(safe-area-inset-top));z-index:39}
.progressline i{display:block;height:100%;background:var(--face);width:0;transition:width .35s ease}

.stage{flex:1 1 auto;position:relative;overflow-y:auto;overflow-x:hidden;
  -webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.stage-inner{position:relative;min-height:100%}
.page-wrap{position:relative;padding-bottom:48px}

/* ---------- Bottom action bar ---------- */
.actionbar{
  position:relative;flex:0 0 auto;z-index:45;
  height:calc(var(--bar-h) + env(safe-area-inset-bottom));
  padding-bottom:env(safe-area-inset-bottom);
  display:flex;align-items:stretch;
  background:#fff;border-top:1px solid var(--rule);
}
.actionbar button{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  color:var(--ink);padding:0 4px;
}
.actionbar button span{
  font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
}
.actionbar button svg{display:block}
.actionbar button:disabled{opacity:.26}
.actionbar button.is-on{color:var(--bright-teal)}
.actionbar .sep{width:1px;background:var(--rule);margin:14px 0;flex:0 0 1px}

/* ---------- Page ---------- */
.page{
  max-width:var(--page-max);margin:0 auto;padding:0 var(--gut);
  animation:rise .34s cubic-bezier(.2,.7,.3,1) both;
}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.pagehead{padding:30px 0 24px;position:relative}
.facebar{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.facechip{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink);
}
.fblock{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--face)}
.fblock svg{width:84%;height:84%;display:block}
.fblock.xs svg{width:92%;height:92%}
/* Icon colour is baked into the sprite as presentation attributes (fill="#ffffff"),
   because <use> renders into a shadow tree that document CSS selectors cannot reach. */
.fblock.sm{width:30px;height:30px}
.fblock.md{width:38px;height:38px}
.fblock.xs{width:22px;height:22px}
.fblock .it{display:none}
.facebar .counter{
  margin-left:auto;font-family:var(--display);font-size:10.5px;font-weight:600;
  letter-spacing:.12em;color:var(--muted);text-transform:uppercase}
.kicker{
  font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--muted);margin:0 0 10px;
}
h1.ptitle{
  font-family:var(--display);font-weight:700;font-size:25px;line-height:1.22;letter-spacing:.02em;
  text-transform:uppercase;color:var(--ink);margin:0;
}
.standfirst{margin:14px 0 0;font-size:17.5px;color:var(--steel);max-width:60ch}
.rule{height:1px;background:var(--rule);margin:26px 0 0}

.block{margin:26px 0}
.block:first-child{margin-top:24px}

/* Cards, angular */
.card{
  background:var(--card);border:1px solid var(--rule);padding:24px;position:relative;
  clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);
}
/* The cut corner is the brand's angular edge, so the face colour rides along it. */
.card{
  background:
    linear-gradient(225deg, var(--face) 0, var(--face) calc(var(--cut) * 1.5), var(--card) calc(var(--cut) * 1.5));
}
.card.tinted{background:var(--face-tint);border-color:transparent}

.blocklabel{
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--muted);display:flex;align-items:center;gap:9px;margin:0 0 14px;
}
.blocklabel:before{content:"";width:0;height:0;border-left:7px solid var(--face);border-top:4px solid transparent;border-bottom:4px solid transparent}

h2.bt{font-family:var(--display);font-weight:600;font-size:17px;line-height:1.34;color:var(--ink);margin:0 0 12px;letter-spacing:.035em;text-transform:uppercase}
.prose p{margin:0 0 14px}
.prose p:last-child{margin-bottom:0}
.prose strong{font-weight:600;color:var(--ink)}
.prose ul{margin:0 0 14px;padding-left:20px}
.prose li{margin:0 0 7px}

.quote{
  font-style:italic;font-size:19px;line-height:1.55;color:var(--deep-teal);
  border-left:3px solid var(--face);padding-left:20px;margin:0;
}
.quote cite{display:block;font-style:normal;font-family:var(--display);font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:12px}

.callout{
  background:var(--bright-teal);color:#fff;padding:22px 24px;
  clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);
}
.callout .blocklabel{color:rgba(255,255,255,.55)}
.callout .blocklabel:before{border-left-color:var(--face)}
.callout p{margin:0 0 12px}
.callout p:last-child{margin-bottom:0}

.figure{border:1px solid var(--rule);background:var(--card);padding:16px}
.figure img{display:block;width:100%;height:auto}
.figure .cap{font-size:13.5px;color:var(--muted);margin-top:12px}
.figure.placeholder{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  min-height:180px;border-style:dashed;color:var(--muted);text-align:center;padding:28px;
}
.figure.placeholder .n{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}

/* ---------- Inputs ---------- */
label.flabel{
  display:block;font-family:var(--text);font-size:15px;font-weight:600;color:var(--ink);
  margin:0 0 9px;line-height:1.5;
}
.fhint{font-size:14px;color:var(--muted);margin:-4px 0 10px}
textarea,input[type=text]{
  width:100%;font-family:var(--text);font-size:16.5px;line-height:1.55;color:var(--body);
  background:#fff;border:1px solid var(--rule);border-bottom:2px solid var(--face);
  padding:13px 14px;resize:vertical;border-radius:0;
}
textarea{min-height:120px}
textarea:focus,input[type=text]:focus{border-color:var(--face);outline:none;box-shadow:0 0 0 3px var(--face-tint)}
.field{margin:0 0 22px}
.field:last-child{margin-bottom:0}

/* Chips */
.chips{display:flex;flex-wrap:wrap;gap:9px}
.chip{
  border:1px solid var(--rule);background:#fff;color:var(--ink);
  padding:10px 15px;font-size:15.5px;line-height:1.2;
  clip-path:polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 0 100%);
  transition:background .14s ease,color .14s ease,border-color .14s ease;
}
.chip[aria-pressed=true]{background:var(--face);border-color:var(--face);color:#fff;font-weight:600}
.pickcount{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);margin-top:14px}

/* Ranker */
.rank{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.rank li{display:flex;align-items:stretch;gap:0;border:1px solid var(--rule);background:#fff}
.rank .pos{
  flex:0 0 46px;display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-weight:700;font-size:16px;color:#fff;background:var(--face);text-transform:uppercase}
.rank .lbl{flex:1;padding:13px 14px;font-size:16px;line-height:1.35;color:var(--ink);display:flex;flex-direction:column;justify-content:center}
.rank .lbl small{display:block;font-size:13.5px;color:var(--muted);font-family:var(--text);margin-top:3px;line-height:1.4}
.rank .mv{display:flex;flex-direction:column;border-left:1px solid var(--rule)}
.rank .mv button{flex:1;width:48px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.rank .mv button+button{border-top:1px solid var(--rule)}
.rank .mv button:disabled{opacity:.22}

/* Scale */
.scale{display:flex;gap:7px}
.scale button{
  flex:1;border:1px solid var(--rule);background:#fff;padding:14px 0;
  font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);
}
.scale button[aria-pressed=true]{background:var(--face);border-color:var(--face);color:#fff}
.scaleends{display:flex;justify-content:space-between;margin-top:9px;font-size:13px;color:var(--muted)}

/* Action rows */
.arow{border:1px solid var(--rule);background:#fff;padding:18px;margin:0 0 12px}
.arow .n{font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--face);margin:0 0 12px}
.arow .grid{display:grid;gap:14px}

/* External CTA */
.cta{
  display:flex;align-items:center;gap:16px;width:100%;text-align:left;text-decoration:none;
  background:var(--card);border:1px solid var(--rule);padding:18px 20px;color:inherit;
  clip-path:polygon(0 0, calc(100% - var(--cut)) 0, 100% var(--cut), 100% 100%, 0 100%);
}
.cta .ic{flex:0 0 42px;height:42px;background:var(--face);display:flex;align-items:center;justify-content:center;color:#fff}
.cta .tx{flex:1;min-width:0}
.cta .tx b{display:block;font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:.045em;text-transform:uppercase;color:var(--ink)}
.cta .tx span{display:block;font-size:14px;color:var(--muted);margin-top:2px}
.cta .ar{flex:0 0 auto;color:var(--muted)}
.ctanote{font-size:13px;color:var(--muted);margin:10px 0 0}

.reslist{display:flex;flex-direction:column;gap:10px}
.res{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--rule);background:#fff;padding:16px 18px;text-decoration:none;color:inherit}
.res .type{font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:#fff;background:var(--bright-teal);padding:4px 7px;flex:0 0 auto;margin-top:2px}
.res b{display:block;font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:.045em;text-transform:uppercase;color:var(--ink);line-height:1.4}
.res span{display:block;font-size:14px;color:var(--muted);margin-top:3px}
.res .tx{flex:1;min-width:0;text-align:left}
.res-ic{flex:0 0 auto;display:flex;align-items:center;color:var(--bright-teal);align-self:center}
.res-ic svg{width:22px;height:22px}

.footnav{display:flex;gap:12px;padding:34px 0 10px}
.footnav button{
  flex:1;border:1px solid var(--rule);background:#fff;padding:15px 12px;
  font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--ink);display:flex;align-items:center;justify-content:center;gap:9px;
}
.footnav button.primary{background:var(--bright-teal);border-color:var(--bright-teal);color:#fff}
.footnav button:disabled{opacity:.3}

/* ---------- Index ---------- */
.index{max-width:var(--page-max);margin:0 auto;padding:0 var(--gut) 40px}
.hero{padding:38px 0 30px;position:relative}
.hero .eyebrow{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--bright-teal);margin:0 0 16px}
.hero h1{font-family:var(--display);font-weight:700;font-size:29px;line-height:1.18;letter-spacing:.025em;
  text-transform:uppercase;color:var(--ink);margin:0 0 16px}
.hero p{margin:0;color:var(--steel);max-width:52ch;font-size:17px}

/* The Cube, unfolded. Six faces, six Cube Core colours. */
.netwrap{padding:4px 0 12px}
.netlabel{font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.netlabel:after{content:"";flex:1;height:1px;background:var(--rule)}
.cubewrap{max-width:520px;margin:0 auto 4px}
.cubeart{display:block;width:100%;height:auto}
.cubeart .tlc-st9{fill:#fff}
.cubeart .tlc-st10{fill:#E6E7E8;stroke:#939598;stroke-width:3.3006}
.cubeart .tlc-st11{fill:#939598}
.cubeart .tlc-st12{fill:#E6E7E8}
.cubeart .tlc-st13{fill:none;stroke:#fff;stroke-width:6.4357;stroke-linecap:round;stroke-linejoin:round}
.cubeart .tlc-st0{opacity:.6}
.cubeart .tlc-st4{opacity:.65}
.cubeart .tlc-st7{opacity:.58}
#cf-leader{fill:#262262}
#cf-team{fill:#92278F}
#cf-structure{fill:#00A79D}
#cf-vision{fill:#2BACE2}
#cf-kpis{fill:#8DC63F}
#cf-strategy{fill:#58595B}
.cubeart .hit{fill:#fff;fill-opacity:0;cursor:pointer}
.cubeart.filtered .tlc-face{opacity:.18;transition:opacity .2s ease}
.cubeart.filtered .tlc-face.on{opacity:1}
.facekey{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;max-width:520px;margin:12px auto 0}
.facekey button{
  display:flex;align-items:center;gap:9px;padding:9px 11px;text-align:left;
  border:1px solid var(--rule);background:#fff;transition:border-color .18s ease,opacity .18s ease;
}
.facekey button:active{transform:scale(.98)}
.facekey .fblock{margin:0}
.facekey b{flex:1;min-width:0;font-family:var(--display);font-weight:600;font-size:10.5px;
  letter-spacing:.07em;text-transform:uppercase;color:var(--ink);line-height:1.25}
.facekey u{flex:0 0 auto;text-decoration:none;font-family:var(--display);font-size:10px;
  font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.facekey button[aria-pressed=true]{border-color:var(--ink)}
.facekey button.empty b{color:var(--muted)}

/* ---------- Goleman's six styles ---------- */
.sty-grid{display:grid;gap:12px}
@media (min-width:700px){.sty-grid{grid-template-columns:1fr 1fr}}
.sty-card{border:1px solid var(--rule);background:#fff;display:flex;flex-direction:column}
.sty-head{background:var(--face);color:#fff;padding:14px 16px}
.sty-head b{display:block;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.05em;text-transform:uppercase;line-height:1.25}
.sty-head span{display:block;font-size:14.5px;font-style:italic;opacity:.92;margin-top:4px}
.sty-bd{padding:15px 16px;flex:1}
.sty-row{display:flex;gap:10px;margin:0 0 9px;font-size:14.5px;line-height:1.5}
.sty-row u{flex:0 0 116px;text-decoration:none;font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.sty-row span{flex:1;color:var(--body)}
.sty-more{margin:12px 0 0;font-size:14.5px;line-height:1.55;color:var(--body);padding-top:12px;border-top:1px solid var(--rule)}
.sty-climate{margin:12px 0 0;font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.sty-climate.pos{color:var(--bright-teal)}
.sty-climate.neg{color:#c2571f}
.sty-src{margin:12px 0 0;font-size:12.5px;color:var(--muted)}

/* ---------- The poster ---------- */
/* Slide 7's three-column sheet. Columns stack on a portrait tablet so the type stays
   readable in the room, and go side by side from 820px and in landscape print. */
.poster-who{display:grid;gap:12px;margin:0 0 18px}
@media (min-width:640px){.poster-who{grid-template-columns:1fr 1fr}}
.poster-who input{width:100%;border:1px solid var(--rule);background:#fff;padding:13px 14px;font-family:var(--text);font-size:16px;color:var(--ink)}
.poster-who input:focus{outline:2px solid var(--bright-teal);outline-offset:2px}

.poster{background:#fff;border:1px solid var(--rule);padding:16px}
.poster-band{display:flex;align-items:center;gap:0;margin:0 0 16px}
.poster-band u{flex:0 0 auto;text-decoration:none;background:var(--bright-teal);color:#fff;
  font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  padding:15px 20px;clip-path:polygon(0 0,100% 0,calc(100% - 16px) 100%,0 100%)}
.poster-band b{flex:1;min-width:0;font-family:var(--display);font-weight:600;font-size:15px;
  letter-spacing:.05em;text-transform:uppercase;color:var(--ink);padding:0 0 0 14px;line-height:1.3}

.poster-cols{display:grid;gap:14px}
@media (min-width:760px){.poster-cols{grid-template-columns:1fr 1fr 1fr;align-items:stretch}}
.poster-panel{border:2px solid var(--bright-teal);padding:14px 15px;min-width:0}
.poster-panel header b{display:block;font-family:var(--display);font-weight:700;font-size:15px;
  letter-spacing:.03em;text-transform:uppercase;color:var(--ink);line-height:1.25}
.poster-panel header span{display:block;font-family:var(--display);font-size:9px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.poster-empty{margin:14px 0 0;font-size:13.5px;line-height:1.55;color:var(--muted)}

.pz-pills,.pz-styles{list-style:none;margin:14px 0 0;padding:0}
.pz-pills li,.pz-styles li{display:flex;align-items:center;gap:10px;padding:5px 0}
.pz-pills i,.pz-styles i{flex:0 0 22px;font-style:normal;font-family:var(--display);font-size:12px;
  font-weight:700;color:var(--ink);text-align:center;text-transform:uppercase}
.pz-styles i{background:var(--bright-teal);color:#fff;border-radius:50%;width:22px;height:22px;
  display:flex;align-items:center;justify-content:center;font-size:11px}
.pz-pill{flex:1;min-width:0;color:#fff;text-align:center;padding:8px 10px;
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;line-height:1.25;overflow-wrap:anywhere}
.pz-key{display:flex;flex-wrap:wrap;gap:6px 12px;margin:14px 0 0;padding-top:12px;border-top:1px solid var(--rule)}
.pz-key span{display:flex;align-items:center;gap:6px}
.pz-key i{width:10px;height:10px;flex:0 0 10px}
.pz-key u{text-decoration:none;font-family:var(--display);font-size:8.5px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

.pz-sabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 0}
.pz-sabs figure{margin:0;border:1px solid var(--rule);padding:10px 8px 12px;position:relative;text-align:center}
.pz-sabs figure:first-child{grid-column:1 / -1}
.pz-sabs i{position:absolute;top:8px;left:8px;font-style:normal;background:var(--bright-teal);color:#fff;
  width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-size:11px;font-weight:700;text-transform:uppercase}
.pz-sabfig svg{display:block;width:100%;max-width:104px;height:auto;margin:0 auto}
.pz-sabs figure:first-child .pz-sabfig svg{max-width:132px}
.pz-sabs figcaption{margin-top:8px;font-family:var(--display);font-size:10px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;color:var(--ink)}
.poster-acts{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0 0}

/* ---------- Landing: the journey above the workbook ---------- */
.landing{
  background:var(--bright-teal);color:#fff;text-align:center;
  /* full-bleed, and it absorbs the page padding so the teal reaches the foot */
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  margin-bottom:-48px;
  padding:38px var(--gut) 46px;
  min-height:calc(100dvh - var(--header-h) - var(--bar-h) - 3px);
}
.lx-hero{max-width:640px;margin:0 auto 34px}
.lx-eyebrow{margin:0 0 14px;font-family:var(--display);font-size:10.5px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;opacity:.85}
.lx-hero h1{margin:0;font-family:var(--display);font-weight:700;font-size:27px;line-height:1.22;
  letter-spacing:.02em;text-transform:uppercase}

.lx-map{display:flex;flex-direction:column;align-items:center;max-width:560px;margin:0 auto}
.lx-link{width:2px;height:26px;background:rgba(255,255,255,.55);flex:0 0 auto}
.lx-node{width:100%;border:2px solid rgba(255,255,255,.75);padding:18px 18px 20px}
.lx-node.coaching{border-style:dashed;padding-bottom:18px}
.lx-label{margin:0;font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;opacity:.85}
.lx-title{margin:7px 0 0;font-family:var(--display);font-weight:700;font-size:16px;
  letter-spacing:.04em;text-transform:uppercase;line-height:1.3}
.lx-note{margin:9px 0 0;font-size:14.5px;line-height:1.5;opacity:.9}
.lx-days{display:grid;gap:10px;margin:16px 0 0}
.lx-day{display:block;width:100%;text-align:center;background:#fff;border:0;padding:15px 14px;
  transition:transform .15s ease,opacity .15s ease}
.lx-day:active{transform:scale(.98)}
.lx-day b{display:block;font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--bright-teal)}
.lx-day span{display:block;margin-top:5px;font-size:15px;line-height:1.4;color:var(--ink)}
.lx-day u{display:block;margin-top:8px;text-decoration:none;font-family:var(--display);font-size:9px;
  font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--steel)}
.lx-day.soon{background:rgba(255,255,255,.16);cursor:default}
.lx-day.soon b{color:#fff}
.lx-day.soon span,.lx-day.soon u{color:rgba(255,255,255,.8)}
.lx-node.showcase{border-style:solid;border-width:3px;background:rgba(255,255,255,.10)}
.lx-open{display:inline-block;margin:14px auto 0;background:#fff;border:0;color:var(--bright-teal);
  padding:12px 22px;font-family:var(--display);font-size:10.5px;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase}
.lx-open:active{transform:scale(.98)}
.lx-coach{display:block;width:100%;max-width:560px;margin:30px auto 0;text-align:center;
  background:rgba(255,255,255,.14);border:2px solid rgba(255,255,255,.75);color:#fff;padding:20px 22px}
.lx-coach:active{transform:scale(.99)}
.lx-coach b{display:block;font-family:var(--display);font-weight:700;font-size:15px;
  letter-spacing:.05em;text-transform:uppercase;line-height:1.3}
.lx-coach span{display:block;margin-top:8px;font-size:15px;line-height:1.55;opacity:.94}
.lx-all{display:inline-block;margin:34px auto 0;background:transparent;border:1.5px solid rgba(255,255,255,.8);
  color:#fff;padding:14px 26px;font-family:var(--display);font-size:11px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase}
@media (min-width:760px){
  .lx-hero h1{font-size:33px}
  .lx-map{max-width:640px}
  .lx-days{grid-template-columns:1fr 1fr}
}

/* ---------- Executive profile builder ---------- */
.pb-card{padding:18px 20px}
.pb-sources{display:grid;gap:14px;margin:14px 0 0}
@media (min-width:640px){.pb-sources{grid-template-columns:repeat(3,1fr)}}
.pb-sources h4{margin:0 0 5px;font-family:var(--display);font-size:9.5px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pb-sources p{margin:0;font-size:14.5px;line-height:1.5;color:var(--ink)}
.pb-sources p.none{color:#c2571f}
.pb-note{display:none;margin:16px 0 0;padding:13px 15px;font-size:14.5px;line-height:1.55}
.pb-note.on{display:block}
.pb-note.info{background:var(--frost);color:var(--body);border-left:3px solid var(--bright-teal)}
.pb-note.warn{background:#fbf0e9;color:#8a3d15;border-left:3px solid #c2571f}
.pb-note.good{background:#e6f6f7;color:var(--ink);border-left:3px solid var(--bright-teal)}
.pb-row{display:none;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.pb-row.on,.pb-send .pb-row{display:flex}
.pb-row .hide{display:none}
.pb-working{display:none;align-items:center;gap:12px;margin:18px 0 0;font-size:14.5px;color:var(--muted)}
.pb-working.on{display:flex}
.pb-spin{flex:0 0 auto;width:18px;height:18px;border:2px solid var(--mist);
  border-top-color:var(--bright-teal);border-radius:50%;animation:pbspin .8s linear infinite}
@keyframes pbspin{to{transform:rotate(360deg)}}
.pb-profile{display:none;border:1px solid var(--rule);border-top:3px solid var(--bright-teal);
  background:#fff;padding:24px 22px;margin:16px 0 0}
.pb-profile.on{display:block}
.pb-meta{margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid var(--rule);
  font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted)}
.pb-body h3{margin:22px 0 8px;font-family:var(--display);font-weight:700;font-size:14px;
  letter-spacing:.05em;text-transform:uppercase;color:var(--ink)}
.pb-body h3:first-child{margin-top:0}
.pb-body p{margin:0 0 13px;font-size:16px;line-height:1.65;color:var(--body)}
.pb-send{display:none;margin:16px 0 0;padding:18px 20px}
.pb-send.on{display:block}
.pb-consent{display:flex;gap:12px;align-items:flex-start;margin:14px 0 0;
  border:1px solid var(--rule);padding:14px 15px;cursor:pointer}
.pb-consent input{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;accent-color:var(--bright-teal)}
.pb-consent span{flex:1;font-size:15px;line-height:1.5;color:var(--ink)}
.pb-who{margin:10px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}
@media print{
  .pb-card,.pb-send,.pb-working,.pb-row{display:none!important}
  .pb-profile{display:block!important;border:0;padding:0}
}

.daybar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:4px 0 30px;
  padding:15px 17px;background:var(--frost);border-left:3px solid var(--bright-teal)}
.daybar b{flex:1;min-width:0;font-family:var(--display);font-weight:700;font-size:13px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.daybar button{flex:0 0 auto;background:none;border:0;color:var(--ink);
  font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}

/* ---------- Index: modules and collapsible days ---------- */
.modgrp{margin:0 0 30px}
.modlabel{margin:0 0 12px;font-family:var(--display);font-size:10.5px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:var(--bright-teal)}
.acc{border-top:1px solid var(--rule)}
.acc:last-child{border-bottom:1px solid var(--rule)}
.acc-head{display:flex;align-items:center;gap:14px;width:100%;padding:18px 2px;
  background:none;border:0;text-align:left}
.acc-tx{flex:1;min-width:0}
.acc-tx b{display:block;font-family:var(--display);font-weight:700;font-size:14.5px;
  letter-spacing:.045em;text-transform:uppercase;color:var(--ink);line-height:1.3}
.acc-tx u{display:block;margin-top:5px;text-decoration:none;font-family:var(--display);
  font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.acc-mark{flex:0 0 auto;position:relative;width:16px;height:16px}
.acc-mark:before,.acc-mark:after{content:'';position:absolute;background:var(--bright-teal);
  transition:transform .18s ease,opacity .18s ease}
.acc-mark:before{left:0;top:7px;width:16px;height:2px}
.acc-mark:after{left:7px;top:0;width:2px;height:16px}
.acc.open .acc-mark:after{transform:scaleY(0);opacity:0}
.acc-body{display:none;padding:0 0 10px}
.acc.open .acc-body{display:block}
.acc-body .sec{margin:0 0 26px}
.acc-body .sec:last-child{margin-bottom:6px}
.acc-body .sechead{border-bottom-width:1px}
.acc-body .sechead h2{font-size:13px;color:var(--muted)}

.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--bright-teal);
  text-decoration-thickness:2px;text-underline-offset:3px}
.prose a:active{color:var(--bright-teal)}
.srcnote{font-size:13px!important;color:var(--muted)!important}

/* ---------- Cube as a still illustration ---------- */
.cubestill{max-width:460px;margin:16px auto 0}
.cubestill svg{display:block;width:100%;height:auto}
.cubestill .cf-leader{fill:#262262}
.cubestill .cf-team{fill:#92278F}
.cubestill .cf-structure{fill:#00A79D}
.cubestill .cf-vision{fill:#2BACE2}
.cubestill .cf-kpis{fill:#8DC63F}
.cubestill .cf-strategy{fill:#58595B}
.cubestill-cap{max-width:460px;margin:12px auto 0;text-align:center;font-size:13px;color:var(--muted)}

/* ---------- Team charter: inputs ---------- */
.ch-fields{display:grid;gap:18px;margin:16px 0 30px}
@media (min-width:760px){.ch-fields{grid-template-columns:1fr 1fr}}
.ch-fields .flabel b{display:block;font-family:var(--display);font-weight:700;font-size:12.5px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.ch-fields .flabel .fhint{margin:4px 0 8px}
.ch-add b{display:block;font-family:var(--display);font-weight:700;font-size:12.5px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:6px}
.ch-add .fhint{display:block;font-weight:400;margin:0}
.ch-eg{margin:8px 0 10px;padding:11px 13px;background:var(--frost);border-left:3px solid var(--bright-teal);
  font-family:var(--text);font-size:13.5px;line-height:1.6;color:var(--body);white-space:pre-wrap;
  overflow-wrap:anywhere}
.ch-grid{margin:14px 0 0;border:1px solid var(--rule);overflow-x:auto}
.ch-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr 1fr 34px;gap:0;min-width:640px;
  border-bottom:1px solid var(--rule)}
.ch-row:last-child{border-bottom:0}
.ch-head{background:var(--bright-teal)}
.ch-head span{padding:10px 10px;font-family:var(--display);font-size:9px;font-weight:700;
  letter-spacing:.11em;text-transform:uppercase;color:#fff;line-height:1.25}
.ch-row > span{padding:10px}
.ch-name{font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink);align-self:center}
.ch-cell{display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start}
.ch-chip{font-style:normal;color:#fff;font-family:var(--display);font-size:8.5px;font-weight:600;
  letter-spacing:.05em;text-transform:uppercase;padding:3px 6px;line-height:1.3}
.ch-del{align-self:center;background:none;border:0;color:var(--muted);font-size:20px;line-height:1;padding:4px}
.ch-empty{margin:0;padding:16px;font-size:14.5px;color:var(--muted)}
.ch-tools{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}

/* ---------- Team charter: the poster ---------- */
.tc{display:grid;gap:10px;grid-template-columns:1fr;background:#fff;border:1px solid var(--rule);padding:14px}
@media (min-width:820px){.tc{grid-template-columns:1fr 1.9fr;grid-template-rows:auto 1fr}
  .tc-title{grid-column:1}.tc-left{grid-column:1}.tc-right{grid-column:2;grid-row:1 / span 2}}
.tc-title{background:var(--bright-teal);color:#fff;padding:20px 22px;display:flex;align-items:center}
.tc-title b{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.06em;text-transform:uppercase}
.tc-left,.tc-right{display:grid;gap:10px;align-content:start}
.tc-panel{border:2px solid var(--bright-teal);padding:12px 14px;min-height:96px}
.tc-panel header b{display:block;font-family:var(--display);font-weight:700;font-size:13px;
  letter-spacing:.05em;text-transform:uppercase;color:var(--ink)}
.tc-panel header span{display:block;margin-top:4px;font-size:12px;line-height:1.45;color:var(--bright-teal)}
.tc-body{margin-top:9px}
.tc-body p{margin:0 0 6px;font-size:14px;line-height:1.5;color:var(--body)}
.tc-grid{margin-top:10px;border:1px solid var(--rule)}
.tc-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr 1fr;border-bottom:1px solid var(--rule);min-height:30px}
.tc-row:last-child{border-bottom:0}
.tc-hd{background:var(--bright-teal)}
.tc-hd span{padding:7px 8px;font-family:var(--display);font-size:8px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:#fff;line-height:1.25}
.tc-row > span{padding:5px 8px;border-right:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:3px;align-content:center}
.tc-row > span:last-child{border-right:0}
.tc-name{font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink)}
.tc-chip{font-style:normal;font-size:9px;color:var(--body);line-height:1.3}

/* ---------- Orientation points ---------- */
.pts{margin:16px 0 0;border-top:1px solid var(--rule)}
.pt{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--rule)}
.pt-mark{flex:0 0 auto;width:10px;height:10px;margin-top:7px;background:var(--face)}
.pt-tx{flex:1;min-width:0}
.pt-tx b{display:block;font-family:var(--display);font-weight:700;font-size:12.5px;
  letter-spacing:.09em;text-transform:uppercase;color:var(--ink);margin-bottom:5px}
.pt-tx p{margin:0;font-size:15.5px;line-height:1.6;color:var(--body)}

/* ---------- The six sides ---------- */
.sides{margin:16px 0 0;border-top:1px solid var(--rule)}
.side{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--rule)}
.side-tx{flex:1;min-width:0}
.side-tx b{display:block;font-family:var(--display);font-weight:700;font-size:13px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin-bottom:6px}
.side-tx p{margin:0;font-size:15.5px;line-height:1.6;color:var(--body)}

/* ---------- Placeholder pages ---------- */
.ph{border:2px dashed var(--silver);background:var(--frost);padding:24px 22px}
.ph-tag{margin:0 0 14px;display:inline-block;background:var(--silver);color:#fff;padding:5px 10px;
  font-family:var(--display);font-size:9.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.ph-sum{margin:0 0 18px;font-size:16.5px;line-height:1.6;color:var(--ink)}
.ph-lab{margin:0 0 9px;font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--muted)}
.ph-list{margin:0 0 18px;padding-left:20px}
.ph-list li{font-size:15.5px;line-height:1.6;color:var(--body);margin-bottom:5px}
.ph-note{margin:0;font-size:13.5px;line-height:1.55;color:var(--muted)}

/* ---------- Live panel ---------- */
.lp{border:1px solid var(--rule);background:#fff}
.lp-head{display:flex;align-items:flex-start;gap:14px;padding:15px 17px;border-bottom:1px solid var(--rule)}
.lp-tx{flex:1;min-width:0}
.lp-tx b{display:block;font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink);line-height:1.3}
.lp-tx span{display:block;margin-top:4px;font-size:14px;color:var(--muted)}
.lp-status{flex:0 0 auto;font-family:var(--display);font-size:9px;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;padding:5px 9px;color:#fff;background:var(--silver)}
.lp-status[data-state=live]{background:var(--bright-teal)}
.lp-status[data-state=blocked]{background:#c2571f}
.lp-view{position:relative;height:min(70vh,640px);background:var(--frost)}
.lp-view:fullscreen{height:100vh;background:#fff}
.lp-view:-webkit-full-screen{height:100vh;background:#fff}
.lp-view iframe{width:100%;height:100%;border:0;display:block;background:#fff}
.lp-loading{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--muted);pointer-events:none}
.lp-fallback{display:none;padding:20px 17px;border-top:1px solid var(--rule)}
.lp-fallback.on{display:block}
.lp-fallback b{display:block;font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.045em;
  text-transform:uppercase;color:var(--ink);margin-bottom:8px}
.lp-fallback p{margin:0 0 14px;font-size:15px;line-height:1.55;color:var(--body)}
.lp-foot{display:flex;flex-wrap:wrap;gap:10px;padding:15px 17px;border-top:1px solid var(--rule)}
.lp-foot .btn:disabled{opacity:.45}

/* ---------- Day 2: the model, the questionnaire, the scores ---------- */
.pyr{max-width:560px;margin:16px auto 0}
.pyr svg{display:block;width:100%;height:auto;overflow:visible}
.pyr-band{fill:var(--face)}
.pyr-rule{stroke:#fff;stroke-width:2}
.pyr-n{fill:#fff;text-anchor:middle;font-family:var(--display);font-weight:700;
  letter-spacing:.06em;text-transform:uppercase}
.pyr-f{fill:#fff;text-anchor:middle;font-family:var(--text);opacity:.92}
.pyr-list{margin:20px 0 0;border-top:1px solid var(--rule)}
.pyr-item{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule)}
.pyr-item u{flex:0 0 26px;text-decoration:none;font-family:var(--display);font-size:13px;font-weight:700;
  color:var(--face);text-transform:uppercase}
.pyr-item b{display:block;font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink);margin-bottom:4px}
.pyr-item span{display:block;font-size:15px;line-height:1.55;color:var(--body)}

.as-head{position:sticky;top:0;z-index:20;
  background:var(--page-bg);padding:10px 0 12px;margin:0 0 4px}
.as-head b{display:block;font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.as-bar{height:4px;background:var(--frost)}
.as-bar i{display:block;height:100%;background:var(--bright-teal);transition:width .2s ease}
.as-q{padding:16px 0;border-bottom:1px solid var(--rule)}
.as-lab{display:flex;gap:12px;margin:0 0 12px}
.as-lab u{flex:0 0 26px;text-decoration:none;font-family:var(--display);font-size:12px;font-weight:700;
  color:var(--muted);text-transform:uppercase;padding-top:2px}
.as-lab span{flex:1;min-width:0;font-size:16px;line-height:1.5;color:var(--ink)}
.as-opts{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-left:38px}
.as-opt{border:1px solid var(--rule);background:#fff;padding:10px 4px;min-height:56px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  transition:background .15s ease,border-color .15s ease}
.as-opt b{font-family:var(--display);font-size:15px;font-weight:700;color:var(--ink);text-transform:uppercase}
.as-opt span{font-family:var(--display);font-size:8.5px;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);line-height:1.15;text-align:center}
.as-opt[aria-pressed=true]{background:var(--face);border-color:var(--face)}
.as-opt[aria-pressed=true] b,.as-opt[aria-pressed=true] span{color:#fff}
@media (max-width:520px){.as-opts{margin-left:0}.as-opt span{display:none}.as-opt{min-height:48px}}

.dr-part{margin:0 0 16px;font-size:13.5px;color:var(--muted)}
.dr-row{padding:16px 0;border-bottom:1px solid var(--rule)}
.dr-top{display:flex;align-items:baseline;gap:12px}
.dr-top b{flex:1;min-width:0;font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink)}
.dr-top u{flex:0 0 auto;text-decoration:none;font-family:var(--display);font-size:19px;font-weight:700;
  color:var(--ink);text-transform:uppercase}
.dr-track{height:9px;background:var(--frost);margin:10px 0 8px}
.dr-track i{display:block;height:100%;transition:width .25s ease}
.dr-row.low .dr-track i{background:#c2571f}
.dr-row.medium .dr-track i{background:var(--lupin)}
.dr-row.high .dr-track i{background:var(--bright-teal)}
.dr-foot{display:flex;justify-content:space-between;gap:12px;font-family:var(--display);font-size:9px;
  font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.dr-row.low .dr-foot span:first-child{color:#c2571f}
.dr-key{margin:16px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}

/* ---------- Shirzad's Saboteurs ---------- */
.judge{border:1px solid var(--rule);background:#fff}
.judge > header{background:#ff8e4f;color:#3e1906;padding:20px 22px}
.judge > header b{display:block;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:.045em;text-transform:uppercase;line-height:1.26}
.judge > header span{display:block;font-family:var(--display);font-size:10px;font-weight:600; letter-spacing:.15em;text-transform:uppercase;opacity:.75;margin-top:6px}
.judge .bd p{margin:0 0 13px;font-size:15.5px;line-height:1.6}
.judge .bd p:last-child{margin-bottom:0}
.sab-grid{display:grid;gap:12px}
@media (min-width:560px){.sab-grid{grid-template-columns:1fr 1fr}}
@media (min-width:760px){.sab-grid{grid-template-columns:repeat(3,1fr)}}
.sab-card{border:1px solid var(--rule);background:#fff;display:flex;flex-direction:column}
.sab-card .bar{height:5px;background:#ff8e4f}
.sab-fig{display:flex;justify-content:center;margin:2px 0 14px}
.sab-fig svg{display:block;width:104px;height:104px}
.judge .bd{padding:20px 22px;display:flex;gap:22px;align-items:flex-start}
.judge .bd .tx{flex:1;min-width:0}
.judge-fig{flex:0 0 auto;width:150px}
.judge-fig svg{display:block;width:100%;height:auto}
.sab-card .in{padding:16px 18px}
.sab-card b{display:block;font-family:var(--display);font-weight:600;font-size:13px; letter-spacing:.13em;text-transform:uppercase;color:var(--ink);margin-bottom:9px;text-align:center}
.sab-card span{display:block;font-size:14.5px;line-height:1.55;color:var(--body);text-align:center}
.pr-head{display:flex;align-items:baseline;gap:10px;margin:0 0 8px}
.pr-count{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.12em; text-transform:uppercase;color:var(--muted);margin-left:auto}
.pr-order{margin-top:22px;border-top:1px solid var(--rule);padding-top:20px}
@media (max-width:600px){ .judge .bd{flex-direction:column;align-items:center} .judge-fig{width:140px} }

/* ---------- Imported from part 2: explore-34 and leading-others ---------- */
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.steps li{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid var(--rule)}
.steps li:last-child{border-bottom:0}
.steps .n{flex:0 0 28px;height:28px;display:flex;align-items:center;justify-content:center; background:var(--face);color:#fff;font-family:var(--display);font-weight:700;font-size:13px;text-transform:uppercase}
.steps .tx{flex:1;font-size:15.5px;line-height:1.5}
.steps .tx b{display:block;font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);margin-bottom:4px}
.gen-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn{border:1px solid var(--face);background:var(--face);color:#fff;padding:15px 22px; font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase; display:inline-flex;align-items:center;gap:10px; clip-path:polygon(0 0, calc(100% - 11px) 0, 100% 11px, 100% 100%, 0 100%);}
.btn.ghost{background:#fff;color:var(--ink);border-color:var(--rule)}
.btn:disabled{opacity:.4}
.gen-note{font-size:13.5px;color:var(--muted);margin:12px 0 0}
.gen-warn{border:1px dashed var(--rule);background:#fff;padding:22px;text-align:center}
.gen-warn p{margin:0 0 16px;font-size:15px;color:var(--steel)}
.sheet{margin-top:20px}
.sheet-head{border-top:2px solid var(--ink);padding:16px 0 18px;margin-bottom:6px}
.sheet-head b{display:block;font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.sheet-head span{display:block;font-size:14px;color:var(--muted);margin-top:5px}
.sheet-theme{margin:0 0 16px;border:1px solid var(--rule);background:#fff}
.sheet-theme > header{display:flex;align-items:center;gap:12px;padding:13px 16px;color:#fff}
.sheet-theme > header .rk{font-family:var(--display);font-weight:700;font-size:15px;opacity:.72;text-transform:uppercase}
.sheet-theme > header b{font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:.05em;text-transform:uppercase}
.sheet-theme > header span{margin-left:auto;font-family:var(--display);font-size:9.5px;font-weight:600; letter-spacing:.12em;text-transform:uppercase;opacity:.82}
.tiplist{list-style:none;margin:0;padding:0}
.tiplist li{border-top:1px solid var(--rule)}
.tiplist li:first-child{border-top:0}
.tiplist button{display:flex;gap:13px;width:100%;text-align:left;padding:14px 16px;align-items:flex-start}
.tiplist .box{flex:0 0 18px;width:18px;height:18px;border:1.5px solid var(--mist);margin-top:2px; display:flex;align-items:center;justify-content:center;color:#fff}
.tiplist .box svg{display:none}
.tiplist button[aria-pressed=true] .box svg{display:block}
.tiplist .tx{flex:1;font-size:15px;line-height:1.55;color:var(--body)}
.tiplist button[aria-pressed=true] .tx{color:var(--ink)}
.sheet-foot{font-size:13.5px;color:var(--muted);margin:4px 0 0}
.ex-chip{display:inline-flex;align-items:center;gap:9px}
.ex-chip .mine{flex:0 0 auto;width:17px;height:17px; display:flex;align-items:center;justify-content:center; font-family:var(--display);font-size:9.5px;font-weight:700;color:#fff;text-transform:uppercase}
.ex-chip[aria-pressed=true]{color:#fff;font-weight:600;border-color:transparent}
.ex-legend{font-size:13px;color:var(--muted);margin:0 0 16px;display:flex;align-items:center;gap:8px}
.ex-legend i{width:14px;height:14px;background:var(--ink);display:inline-flex; align-items:center;justify-content:center;color:#fff;font-family:var(--display);font-size:8px;font-weight:700;text-transform:uppercase}
.detail{margin-top:22px;border-top:1px solid var(--rule);padding-top:20px}
.detail-empty{font-size:14.5px;color:var(--muted);border:1px dashed var(--rule);padding:24px;text-align:center}
.dt{border:1px solid var(--rule);background:#fff}
.dt > header{padding:18px 20px;color:#fff;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dt > header b{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:.04em;text-transform:uppercase;line-height:1.22}
.dt > header .dom{font-family:var(--display);font-size:9.5px;font-weight:600;letter-spacing:.13em; text-transform:uppercase;opacity:.85}
.dt > header .rank{margin-left:auto;font-family:var(--display);font-size:9.5px;font-weight:600; letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.92);color:var(--ink);padding:4px 8px}
.dt-head{padding:18px 20px;border-bottom:1px solid var(--rule); font-family:var(--text);font-weight:600;font-size:15.5px;line-height:1.55;color:var(--ink)}
.dt-sec{padding:18px 20px;border-bottom:1px solid var(--rule)}
.dt-sec:last-child{border-bottom:0}
.dt-sec h4{font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.15em; text-transform:uppercase;color:var(--muted);margin:0 0 10px;display:flex;align-items:center;gap:8px}
.dt-sec h4:before{content:"";width:0;height:0;border-left:6px solid currentColor; border-top:4px solid transparent;border-bottom:4px solid transparent}
.dt-sec p{margin:0 0 12px;font-size:15.5px;line-height:1.6}
.dt-sec p:last-child{margin-bottom:0}
.dt-sec .lead{font-weight:600;color:var(--ink)}
.dt-sec ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.dt-sec li{display:flex;gap:11px;font-size:15px;line-height:1.55}
.dt-sec li:before{content:"";flex:0 0 auto;width:5px;height:5px;margin-top:8px;background:currentColor}
.dt-close{display:flex;justify-content:flex-end;padding:14px 20px}
.dt-close button{font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.13em; text-transform:uppercase;color:var(--muted)}
.facekey button.empty u{color:var(--silver)}
.netnote{font-size:13px;color:var(--muted);max-width:520px;margin:14px auto 30px}

.sec{margin:0 0 34px}
/* The closing block runs from the 'Always with you' heading to the foot of the index,
   so the teal-to-white wash has the whole remaining page to fall away across rather
   than a couple of rows. Everything inside is set in ink, the only value that holds
   contrast at both ends of the ramp (5.8:1 on the teal, 15:1 on the white). */
.closing{
  background:linear-gradient(180deg, var(--bright-teal) 0, #ffffff 58%);
  /* full-bleed like the header bar, with its contents held to the content column */
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  margin-bottom:calc(var(--gut) * -2.5);
  padding-top:22px;
  padding-bottom:calc(var(--gut) * 2.5);
  padding-left:max(var(--gut), calc((100vw - var(--page-max)) / 2 + var(--gut)));
  padding-right:max(var(--gut), calc((100vw - var(--page-max)) / 2 + var(--gut)));
}
.closing .sec{margin-bottom:30px}
.sec-always .sechead .meta{color:var(--ink)}
.sec-always .toc .t span{color:var(--ink)}
.sec-always .toc li{border-bottom-color:rgba(25,36,46,.22)}
.sec-always .toc .state{border-color:rgba(25,36,46,.45)}
/* the Across-the-Cube block is bright teal, so it needs an edge near the top of the ramp */
.sec-always .fblock{box-shadow:0 0 0 1.5px rgba(255,255,255,.95)}
.sechead{display:flex;align-items:baseline;gap:12px;padding:0 0 14px;border-bottom:2px solid var(--ink)}
.sechead h2{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);margin:0}
.sechead .meta{margin-left:auto;font-family:var(--display);font-size:10.5px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.toc{list-style:none;margin:0;padding:0}
.toc li{border-bottom:1px solid var(--rule)}
.toc button{display:flex;align-items:center;gap:14px;width:100%;padding:16px 4px;text-align:left}
.toc .fblock{align-self:center}
.toc .t{flex:1;min-width:0}
.toc .t b{display:block;font-family:var(--display);font-weight:600;font-size:14.5px;letter-spacing:.045em;text-transform:uppercase;color:var(--ink);line-height:1.38}
.toc .t span{display:block;font-size:13.5px;color:var(--muted);margin-top:3px}
.toc .state{flex:0 0 auto;width:13px;height:13px;border:1.5px solid var(--mist)}
.toc .state.done{background:var(--bright-teal);border-color:var(--bright-teal)}
.toc li.current .t b{color:var(--bright-teal)}

.utilgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0 0}
.util{
  border:1px solid var(--rule);background:#fff;padding:18px;text-align:left;
  display:flex;flex-direction:column;gap:6px;
  clip-path:polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
}
.util b{font-family:var(--display);font-weight:600;font-size:13.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink)}
.util span{font-size:13px;color:var(--muted);line-height:1.45}
.util.danger b{color:#b1462f}

.notice{
  background:var(--frost);border-left:3px solid var(--bright-teal);padding:18px 20px;margin:30px 0 0;
  font-size:14.5px;line-height:1.6;color:var(--steel);
}
.notice b{font-family:var(--display);display:block;font-size:11px;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink);margin-bottom:9px}

/* ---------- Markup layer ---------- */
#inkLayer{position:absolute;inset:0;z-index:30;display:none;touch-action:none}
#inkLayer.on{display:block}
#inkCanvas{display:block;width:100%;height:100%}
.inkbar{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:calc(var(--bar-h) + env(safe-area-inset-bottom) + 14px);z-index:60;
  display:none;align-items:center;gap:6px;padding:9px 11px;
  background:var(--deep-sea);box-shadow:0 10px 30px rgba(25,36,46,.34);
}
.inkbar.on{display:flex}
.inkbar .sw{width:28px;height:28px;border:2px solid rgba(255,255,255,.22)}
.inkbar .sw[aria-pressed=true]{border-color:#fff}
.inkbar .tool{
  width:34px;height:30px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);
}
.inkbar .tool[aria-pressed=true]{color:#fff;background:rgba(255,255,255,.16)}
.inkbar .div{width:1px;height:24px;background:rgba(255,255,255,.2);margin:0 3px}
.inkbar .done{
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:#fff;background:var(--bright-teal);padding:8px 13px;
}
.inkhint{
  position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--bar-h) + env(safe-area-inset-bottom) + 62px);
  z-index:59;background:rgba(25,36,46,.9);color:#fff;padding:8px 14px;font-size:13px;display:none;
}
.inkhint.on{display:block;animation:fade 3s forwards}
@keyframes fade{0%,70%{opacity:1}100%{opacity:0}}

.toast{
  position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--bar-h) + env(safe-area-inset-bottom) + 20px);
  background:var(--bright-teal);color:#fff;padding:13px 20px;font-size:14.5px;z-index:70;
  opacity:0;pointer-events:none;transition:opacity .25s ease;max-width:88vw;text-align:center;
}
.toast.on{opacity:1}

/* ---------- Wide / landscape ---------- */
/* Tablet range starts at 700px, which covers 7in tablets in landscape and every
   9.7in / 10in tablet in portrait. The bar padding uses max(), so it stays at the
   plain gutter until the viewport is actually wider than the content column. */
@media (min-width:700px){
  :root{--gut:34px}
  h1.ptitle{font-size:30px}
  .hero h1{font-size:35px}
  /* Bars stay full-bleed, but their contents line up with the content column
     instead of running to the screen edges. */
  .topbar,.actionbar{
    padding-left:max(var(--gut), calc((100% - var(--page-max)) / 2 + var(--gut)));
    padding-right:max(var(--gut), calc((100% - var(--page-max)) / 2 + var(--gut)));
  }
}

/* ---------- Recreated diagrams ---------- */
.cmp{display:grid;gap:14px}
@media (min-width:700px){.cmp{grid-template-columns:1fr 1fr}}
.cmp-col{border:1px solid var(--rule);background:#fff;display:flex;flex-direction:column}
.cmp-col header{padding:16px 18px;color:#fff}
.cmp-col header b{display:block;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.05em;text-transform:uppercase}
.cmp-col header span{display:block;font-family:var(--display);font-size:10px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;opacity:.75;margin-top:5px}
.cmp-col ul{list-style:none;margin:0;padding:18px;display:flex;flex-direction:column;gap:12px}
.cmp-col li{display:flex;gap:11px;font-size:15.5px;line-height:1.45}
.cmp-col li:before{content:"";flex:0 0 auto;width:0;height:0;margin-top:7px;
  border-left:6px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;opacity:.5}
.cmp-col.was header{background:var(--steel)}
.cmp-col.was li{color:var(--steel)}
.cmp-col.now header{background:var(--face)}
.cmp-col.now li{color:var(--body)}

.stk{display:grid;gap:12px}
@media (min-width:700px){.stk{grid-template-columns:repeat(3,1fr)}}
.stk-panel{padding:20px;color:#fff;display:flex;flex-direction:column;gap:8px;min-height:150px;
  clip-path:polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%)}
.stk-panel b{font-family:var(--display);font-weight:600;font-size:17px;letter-spacing:.06em;text-transform:uppercase}
.stk-panel span{font-size:15px;line-height:1.5;opacity:.93}
.stk-tag{margin-top:auto;padding-top:12px;font-family:var(--display);font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;opacity:.8}

.eq{border:1px solid var(--rule);background:#fff;padding:22px 18px}
.eq-row{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:8px}
.eq-grp{display:flex;align-items:stretch;gap:8px;flex:0 1 auto}
.eq-term{flex:0 1 auto;min-width:0;text-align:center;padding:14px 16px;background:var(--frost);
  display:flex;align-items:center;justify-content:center}
.eq-term b{display:block;font-family:var(--display);font-weight:700;font-size:14.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);line-height:1.26}
.eq-term.lead{background:var(--face);min-width:120px}
.eq-term.lead b{color:#fff}
.eq-op{display:flex;align-items:center;justify-content:center;padding:0 2px;
  font-family:var(--display);font-weight:700;font-size:20px;color:var(--face);text-transform:uppercase}
.eq-brace{display:grid;gap:8px;margin-top:14px}
@media (min-width:640px){.eq-brace{grid-template-columns:1fr 1fr}}
.eq-out{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--rule)}
.eq-out i{flex:0 0 3px;align-self:stretch;background:currentColor}
.eq-out b{display:block;font-family:var(--display);font-size:10.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.eq-out span{display:block;font-size:14.5px;line-height:1.5;color:var(--body);margin-top:5px}
.eq-out.top{color:var(--face)}
.eq-out.mid{color:var(--silver)}
.eq-defs{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.eq-def{font-size:14.5px;line-height:1.5;color:var(--steel);margin:0}
.eq-def b{font-family:var(--text);font-weight:600;color:var(--ink)}
.eq-op.brk{font-size:28px;font-weight:500;color:var(--silver);padding:0}

.dom{display:flex;flex-direction:column;gap:10px}
.dom-row{display:flex;border:1px solid var(--rule);background:#fff;overflow:hidden}
.dom-row .bar{flex:0 0 8px}
.dom-row .tx{padding:15px 17px}
.dom-row .tx b{display:block;font-family:var(--display);font-weight:600;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.dom-row .tx span{display:block;font-size:15px;line-height:1.5;color:var(--body);margin-top:6px}
.dom-row .tx em{display:block;font-style:normal;font-size:13px;color:var(--muted);margin-top:6px}

/* ---------- Strengths picker ---------- */
.sp-head{display:flex;align-items:baseline;gap:10px;margin:0 0 8px}
.sp-count{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);margin-left:auto}
.sp-count.full{color:var(--face)}
.sp-group{margin:0 0 18px}
.sp-group:last-child{margin-bottom:0}
.sp-glabel{display:flex;align-items:center;gap:9px;margin:0 0 10px;
  font-family:var(--display);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.sp-glabel i{width:12px;height:12px;flex:0 0 12px}
.sp-chip{
  border:1px solid var(--rule);background:#fff;color:var(--ink);
  padding:10px 14px;font-size:15px;line-height:1.2;
  clip-path:polygon(0 0, calc(100% - 9px) 0, 100% 9px, 100% 100%, 0 100%);
}
.sp-chip[aria-pressed=true]{color:#fff;font-weight:600;border-color:transparent}
.sp-chip[data-locked=true]{opacity:.4}

.sp-order{margin-top:22px;border-top:1px solid var(--rule);padding-top:20px}
.sp-empty{font-size:14.5px;color:var(--muted);border:1px dashed var(--rule);padding:20px;text-align:center}
.sp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.sp-list li{display:flex;align-items:stretch;border:1px solid var(--rule);background:#fff}
.sp-list .pos{flex:0 0 42px;display:flex;align-items:center;justify-content:center;color:#fff;
  font-family:var(--display);font-weight:700;font-size:15px;text-transform:uppercase}
.sp-list .nm{flex:1;padding:12px 13px;display:flex;flex-direction:column;justify-content:center}
.sp-list .nm b{font-family:var(--display);font-weight:600;font-size:14.5px;letter-spacing:.045em;text-transform:uppercase;color:var(--ink);line-height:1.3}
.sp-list .nm small{font-size:12px;color:var(--muted);margin-top:2px}
.sp-list .mv{display:flex;border-left:1px solid var(--rule)}
.sp-list .mv button{width:42px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.sp-list .mv button+button{border-left:1px solid var(--rule)}
.sp-list .mv button:disabled{opacity:.22}

/* ---------- Print ---------- */
#printRoot{display:none}
@media print{
  html,body{height:auto!important;overflow:visible!important}
  #app{height:auto!important;overflow:visible!important;display:block!important}
  .stage{overflow:visible!important;height:auto!important}
  .stage-inner{min-height:0!important}
  @page{size:A4 portrait;margin:16mm 14mm}
  @page poster{size:A4 landscape;margin:10mm}
  body.printing-poster{page:poster}
  body{background:#fff;font-size:11pt;line-height:1.5}
  #app,.actionbar,.inkbar,.inkhint,.toast{display:none!important}
  #printRoot{display:block!important}
  /* Poster printed on its own: landscape, three columns, colour preserved. */
  .prt-poster{margin:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .prt-poster *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .prt-poster .poster{border:0;padding:0;page-break-inside:avoid;break-inside:avoid}
  .prt-poster .poster-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6mm;align-items:stretch}
  .prt-poster .poster-band u{font-size:11pt;padding:9pt 14pt}
  .prt-poster .poster-band b{font-size:13pt}
  .prt-poster .poster-panel{border:1.5pt solid #0baebb;padding:5mm}
  .prt-poster .poster-panel header b{font-size:12pt}
  .prt-poster .poster-panel header span{font-size:7pt}
  .prt-poster .pz-pill{font-size:8.5pt;padding:5pt 6pt}
  .prt-poster .pz-pills i,.prt-poster .pz-styles i{font-size:9pt}
  .prt-poster .pz-sabfig svg{max-width:26mm}
  .prt-poster .pz-sabs figure:first-child .pz-sabfig svg{max-width:34mm}
  .prt-poster .pz-sabs figcaption{font-size:7.5pt}
  .prt-poster .pz-key u{font-size:6.5pt}
  body.printing-poster #printRoot > *:not(.prt-poster){display:none!important}
  body.printing-poster .prt-cover{display:none!important}
  /* Charter printed on its own, landscape */
  .prt-charter{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .prt-charter *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .prt-charter .tc{border:0;padding:0;display:grid;grid-template-columns:1fr 1.9fr;
    grid-template-rows:auto 1fr;gap:5mm;page-break-inside:avoid}
  .prt-charter .tc-title{grid-column:1}
  .prt-charter .tc-left{grid-column:1}
  .prt-charter .tc-right{grid-column:2;grid-row:1 / span 2}
  .prt-charter .tc-title b{font-size:16pt}
  .prt-charter .tc-panel{min-height:0;padding:4mm}
  .prt-charter .tc-panel header b{font-size:10pt}
  .prt-charter .tc-panel header span{font-size:7.5pt}
  .prt-charter .tc-body p{font-size:9pt}
  .prt-charter .tc-hd span{font-size:6.5pt}
  .prt-charter .tc-name{font-size:8pt}
  .prt-charter .tc-chip{font-size:7pt}
  body.printing-charter #printRoot > *:not(.prt-charter){display:none!important}
  body.printing-charter .prt-cover{display:none!important}
  body.printing-charter{page:poster}
  body.printing-poster{ }
  .prt-cover{margin:0 0 22pt;border-bottom:2pt solid #19242e;padding-bottom:14pt}
  .prt-cover .k{font-family:var(--display);font-size:8pt;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#565a5b;margin:0 0 8pt}
  .prt-cover h1{font-family:var(--display);font-size:17pt;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#19242e;margin:0 0 6pt}
  .prt-cover .d{font-size:9pt;color:#565a5b;margin:0}
  .prt-page{margin:0 0 22pt}
  .prt-page h2{page-break-after:avoid;break-after:avoid}
  .prt-page h2{font-family:var(--display);font-size:12pt;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#19242e;margin:0 0 4pt}
  .prt-page .face{font-family:var(--display);font-size:7.5pt;font-weight:600;letter-spacing:.16em;
    text-transform:uppercase;color:#565a5b;margin:0 0 10pt;padding-left:9pt;border-left:3pt solid #0baebb}
  .prt-q{margin:0 0 12pt;page-break-inside:avoid;break-inside:avoid}
  .prt-q .q{font-family:var(--text);font-size:10pt;font-weight:600;color:#19242e;margin:0 0 4pt}
  .prt-q .a{white-space:pre-wrap;border-left:1pt solid #dedfdd;padding:2pt 0 2pt 9pt;color:#33383d;min-height:11pt}
  .prt-q .a.empty{color:#9c9a9a;font-style:italic}
  .prt-ink{margin:8pt 0 0}
  .prt-ink img{max-width:100%;max-height:120mm;border:1pt solid #dedfdd}
  .prt-foot{margin-top:20pt;padding-top:8pt;border-top:1pt solid #dedfdd;font-size:8pt;color:#9c9a9a}
}
