{"version":3,"file":"CallClock.DdII58HS.mjs","names":["p","useRef","useState","_Fragment"],"sources":["https:/framerusercontent.com/modules/B3YbHIRq7W9DHhRYoCVF/sEHcctuNqNRqngXTkOiw/CallClock.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{useReducedMotion}from\"framer-motion\";import{useEffect,useRef,useState}from\"react\";import{loopControls,readLoop,useLoop}from\"https://framerusercontent.com/modules/quoiQWnZSFV7x2C41dRW/Q1c1eweezFUx9ncqCEgi/LoopPlay.js\";import{readTyping,typeBoxIn,typingControls,TypeOverlay,TYPING_CSS}from\"https://framerusercontent.com/modules/QonUnl5OsCHe9s2jwLnT/GRx3zLoObJDObPeXtEEK/ChatTyping.js\";/*\n * Call Clock (round 3b): \"What Ricavi is\" on /sales-coaching-software, as a four-column comparison with Ricavi's row\n * as the hero.\n *\n * Every row answers one question: when does the rep get help with this call? Columns, in the order a rep lives them:\n * before the call, during it (live coaching), after it, between calls (practice before the next one).\n *\n * Ricavi's row is taller, at full ink, under an accent rule, with a real example in every column:\n *   Before: the pre-call brief's meeting card slides in.\n *   During: the 18:22 objection arrives, then the 22:10 smart nudge lands above it; the column warms as it lands.\n *   After: the real scorecard, its 62/100 counting up, then the Discover row (45) is ringed, with the coach's note on\n *          when discovery came.\n *   Between calls: the coaching chat already loaded with the call, playing out in three beats (round 3, section 17\n *          item 2): the coach opens (\"Coaching on this call\"); the coach's read (62/100 overall score, weakest:\n *          Discover 45); the practice prompt (\"Draft the discovery questions I skipped on this call\") with the chat\n *          box under it. 520ms per line and a 360ms hold, the live nudge's rhythm. No render shows a role-play\n *          exchange, so this is the real coaching chat, not a drawn one.\n * The other rows are quieter and each say where they help and where they don't: a workshop lands weeks before and\n * fades; a note-taker records during the call (no help) and summarises after it; a manager's review comes a week\n * later. Every one of them has a muted \"no help\" cell in the live column: only Ricavi helps while the buyer is\n * still talking.\n *\n * Every crop is a window on a full render already on framerusercontent.com: no crop is uploaded, no UI is drawn.\n * The only drawn pixels are the counting 62 (an SVG over the render's own digits, which fades away to the real\n * pixels once the count lands), the ring round the Discover row, and the labels in the component's own type.\n *\n * Wide (component 1100px and up): a grid, one row per way to improve, one column per moment. Narrower: one block\n * per column, in order, Ricavi's cell first, then the other rows' cells for that column.\n *\n * Motion, once, as it comes into view: before, during, after, between calls, then it holds. The canvas, the server\n * render and reduced motion show the finished state at once.\n *\n * Round 3 section 26 item 2 (\"Typing\", on by default; ChatTyping.tsx): once the between calls chat has landed, its chat\n * box types the product's own prompts one by one (type, hold, backspace), then sends the last (\"Draft the discovery\n * questions I skipped on this call\"): the text lifts out, the input shows its placeholder again and the same prompt's\n * chip in the crop gets the accent ring. No render shows the coach's reply, so none is drawn (BLOCKED in the plan).\n *\n * Round 3 section 26 item 1 and 26a (\"Screens: Dark\", option C): the same four real crops, darkened in the browser by a\n * tuned CSS filter on the product pixels only (the \"Dark filter\" control), on dark cards with dark borders; the peach\n * accents the filter dulls (the smart nudge card and label, the objection label, the Discover bar) get a thin peach\n * outline and glow from the \"Glow\" boxes (file pixels, drawn over the crop, never recolouring its text). This is an\n * approximation of a dark theme: the product doesn't ship one.\n *\n * Round 3 section 23 (\"Loop\", on by default; LoopPlay.tsx): once the first play has finished (wide: all four columns;\n * narrow: any column), Ricavi's crops loop while the component is on screen. They hold the finished state for a\n * second, ease back to their start in 300ms and play again in the same order (wide: the same column cascade); three\n * plays in all, then they rest until the component leaves the screen and comes back. Only the crops, the count, the\n * ring and its note, and the live column's warmth replay: the text cells and the other rows stay put once shown.\n *\n * Round 3 section 29 (\"Reinforce, don't repeat\"; \"Shared moments\", Compact by default): the objection and nudge cards\n * live in the hero and the tour, and Score receipts owns the scorecard, so this section shows a compact version of\n * each. During: the same two cards cut to their heads, the timestamp and one line each (22:10 Smart nudge, Surface\n * the decision process; 18:22 Objection, the buyer's line), arriving as before. After: the recording and its key\n * moments on the timeline, without the scorecard, and under it one line, \"62/100 overall score\", with a link to the\n * scorecard (#score-receipts). No count-up and no Discover ring here. Only instance boxes, counts and alt texts left at\n * the code defaults are swapped, so a custom crop is kept. \"Full\" brings the round 3 crops back.\n *\n * Round 4 (Dave, 16 Oct, D16-5): call times read as time. The alt texts say \"18 minutes 22 seconds in\", \"22 minutes 10\n * seconds in\" and \"the recording (40 minutes 10 seconds)\" instead of 18:22, 22:10 and 40:10 (a screen reader reads\n * \"18:22\" as a time of day). The visible times are inside the crops (the app's own pixels) and stay as drawn. Nothing\n * else changes; the instances store their own alts and get them by SET (D16-CA-plan.md).\n * Round 4 (D16-1, D16-9 \"make the table's titles clear\"): Type scale \"Home\" (the default) sets the table's text in\n * home's type scale (see the CSS); \"Before 16 Oct\" draws exactly as before.\n * R5-QA (19 Oct, QA-11): every <img> is a slice of a screen whose description is on its role=\"img\" wrapper (the\n * column's alt control), so each <img> is alt=\"\" and aria-hidden on purpose (Between calls draws four slices of one\n * render: four alts would repeat the description four times).\n *\n * N2 (21 Oct 2026, audit SC3, PF6, FSL-15, FSL-27, S-10, S-18; EXEMPLAR-SPEC C8, ledger C2, P8): three opt-in controls,\n * each off by default so every placed instance draws exactly as before until a writer sets it.\n * - \"Marks\": Ticks and X. Every cell of the table carries a mark, as /compare's CompareTable does: a burnt peach tick on\n *   a dark disc with a soft glow (yes), a muted grey tick (partly) or a muted grey X (no); Ricavi's row is a tick in every\n *   column. Each other row's four marks come from \"Row n marks\" (\"yes, no, part, no\"); a blank token falls back to the\n *   cell: an empty cell, a cell in the live column, and a cell that starts \"No\" / \"Not\" or says \"No help\" / \"No coaching\"\n *   read as no; one that starts \"Varies\" reads as partly; any other words read as yes. An empty cell shows its X (never an\n *   empty cell), on the narrow layouts too (the row's name and its X). A key under the table names the marks shown\n *   (\"Key yes\", \"Key partly\", \"Key no\"). Marks never dim: the workshop's fade dims its words only.\n * - \"Live tint\" off: no tinted band behind the live column (C6), and on the narrow layouts the live block is a plain\n *   block with the rules above and below it. The peach dot on the live head stays.\n * - \"Workshop fade\" off: row 2's before cell keeps its words at full contrast (the fade ends at about 2:1, A6; it is the\n *   exemplar's workshop idea, and on the other pages row 2 isn't a workshop).\n * - \"<Column> readable crop\": one or more boxes (\"x,y,w,h; x,y,w,h\") that replace the column's crop at every width, on\n *   the column's image or on \"<Column> readable image\" (+ \"readable size\", default 1140x2160 for another image), with\n *   its own alt (\"readable alt\"). The boxes are chosen on whole elements narrow enough that the app's own text reads at\n *   about 13px or more in a 1280px table (P8 keeps the crop; Dave's S9 bar 12.7px), and the crop is never drawn above\n *   1.15x the app's own size (render width / density; TwoRecorders' cap; \"@1.6\" at the end of the boxes allows up to 2x\n *   for a render whose own text is small). A readable crop draws no count, no ring, no typing and no fade, and only the\n *   glows wholly inside its boxes; an open column keeps its chat beats; a live column with one box lands as the first\n *   card would.\n *\n * P1 TABLES (22 Oct 2026, SITE-PATTERNS, Ary ~1:40 am: the legend in the header row right-aligned to the table edge; the\n * takeaway as the table's anchored foot): two opt-in controls, each off by default so every placed instance draws exactly\n * as before. \"Key place\" In the header row: the key moves from under the table to over the column heads, right-aligned to\n * the table's right edge. \"Takeaway place\" Table foot: the takeaway and the caption become the table's last row, full\n * width, under the last rule and closed by a rule of its own (a rule above it on the narrow blocks), the takeaway in the\n * band's text colour with the words between ** marks bold, the caption under it. Nothing floats under the table.\n */// ---- the renders and their boxes (file pixels, measured 15 Oct 2026 on the uploaded files) ------------------------\n// Before: the Brightwell deal on the phone deal page (product-shots/phone/deal-top-phone.png): the facts from the CRM\n// (value, stage, close date, contact, seller, last activity) and what's holding the deal back. The pre-call brief's\n// meeting card names Kinno.io, which is outside the Brightwell universe, so it is not used (round 3b note).\nconst DEAL_PAGE=\"https://framerusercontent.com/images/P9WAe3DqScEZ2GYt8yREn9cgs.png\";// During: the live coaching panel (1140 x 2160), the source of the hero's sidebar: the 22:10 smart nudge card and the\n// 18:22 objection card, in the order the sidebar shows them (newest on top).\n// R5-3 (19 Oct 2026): the baked copy (product-shots/r5-times/live-panel-r5.png): the cards read \"22m 10s\" and \"18m 22s\";\n// every other pixel is the source's (SsADPsgHNjfUtHdlHy7Vf4FWyA.webp). The URL is filled in by scripts/stage/r5-a-1c-fill.mjs.\nconst LIVE_PANEL=\"https://framerusercontent.com/images/j3dblJj4V80O2L389iNCPlIU.png\";// After: the phone call page (product-shots/phone/call-page-phone.png): the 40:10 recording, the key moments on their\n// timeline, the 62/100 line, then the Discover row (45/100). The \"Synced to CRM\" chip is left out (A10).\nconst CALL_PAGE=\"https://framerusercontent.com/images/V4DN5YNc6heGVy84apHoARErwQo.png\";// Between calls: the coaching panel on the desktop call page (product-shots/v3/meeting-audio.png, 2880 x 1800): its\n// heading, the coach's score line, one suggested question, and the chat box. The lines with em dashes are left out,\n// and so is the question that names Corvane Oil (outside the Brightwell universe).\nconst MEETING_DESK=\"https://framerusercontent.com/images/KeWOcUoMaLbr1KCPW3LQkTXJbzE.png\";// Section 29, compact: the cards' heads (the label, the time, the title or the buyer's line; the Say this boxes are\n// below the cut) and the recording with its key moments (the scorecard starts below the cut at y 750).\nconst COMPACT_BOXES={2:[\"56,692,1028,200\",\"56,1226,1028,270\"],3:[\"50,385,1040,355\"]};const COMPACT_GLOW2=\"58,695,1024,195,24; 103,735,390,67,33; 103,1269,275,66,33\";/** The cards' corner radius in file pixels, for the compact slices (the full slices keep their percent radius). */const CARD_RADIUS=24;const PHONE_SIZE=\"1140x2160\";const DESK_SIZE=\"2880x1800\";const DEFAULT_SHOTS={1:{image:DEAL_PAGE,size:PHONE_SIZE,boxes:[\"50,720,1040,412\",\"50,1248,1040,392\"],hide:\"\",fade:true,bg:\"#F8F8F7\",count:\"\",countBox:\"\",pick:\"\",open:false,beats:\"\"},2:{image:LIVE_PANEL,size:PHONE_SIZE,boxes:[\"56,692,1028,512\",\"56,1226,1028,636\"],hide:\"\",fade:false,bg:\"#FFFFFF\",count:\"\",countBox:\"\",pick:\"\",open:false,beats:\"\"},3:{image:CALL_PAGE,size:PHONE_SIZE,boxes:[\"50,385,1040,545\",\"58,1030,1024,90\"],hide:\"\",fade:true,bg:\"#F8F8F7\",count:\"62\",countBox:\"103,802,160,84\",pick:\"2\",open:true,beats:\"\"},4:{image:MEETING_DESK,size:DESK_SIZE,boxes:[\"1942,166,918,74\",\"1962,528,568,64\",\"1942,856,918,106\",\"1942,1532,918,254\"],hide:\"\",fade:false,bg:\"#FFFFFF\",count:\"\",countBox:\"\",pick:\"3\",open:true,beats:\"1,2,3,3\"}};// ---- option C: the dark screens (round 3 section 26a) ---------------------------------------------------------------\n// The filter on the product pixels only: inverted lightness, hues turned back, a touch more contrast and colour. Tuned on\n// the harness (15 Oct 2026): the renders' white and #F8F8F7 surfaces land at about #101011 to #171718, their text at\n// light grey, the greens, blues and reds stay recognisable.\nconst DARK_FILTER=\"invert(0.92) hue-rotate(180deg) contrast(1.04) saturate(1.1)\";const DARK_CARD=\"#121214\";const DARK_BORDER=\"rgba(248, 248, 247, 0.16)\";const GLOW=\"#FF584A\";const GLOW_STRENGTH=60;// Where the peach accents are, in each render's file pixels (\"x,y,w,h,radius\"; boxes separated by \";\"), measured by\n// sampling the uploaded files: the smart nudge card (its peach fill and border) and its label, the objection label, the\n// Discover bar. The deal page and the coaching panel carry no peach.\nconst DEFAULT_GLOW={1:\"\",2:\"58,695,1024,505,24; 103,735,390,67,33; 103,1269,275,66,33\",3:\"100,1091,423,16,8\",4:\"\"};// ---- the words (sources: the page's ledger rows, the tour, the answer, round 2 and the round 3 and 3b briefs) ----\n// U+2060 (word joiner) after a hyphen keeps \"AI-simulated\" on one line, as in the ledger.\nconst COPY={rowsLabel:\"Ways to improve a call\",col1Head:\"Before the call\",col1Sub:\"\",col2Head:\"During the call\",col2Sub:\"\",col3Head:\"After the call\",col3Sub:\"\",col4Head:\"Between calls\",col4Sub:\"\",oursName:\"Ricavi\",ours1Line:\"A brief with the account, attendees, and past notes from your CRM.\",ours2Line:\"Prompts the rep in the moment, while the buyer is still talking.\",ours3Line:\"A scorecard with timestamped moments, and drafted follow-ups the rep approves.\",ours4Line:\"Role-play against an AI-⁠simulated prospect, in a coaching chat already loaded with the call.\",ours1Alt:\"The Brightwell deal from the CRM: value $42,000, stage Proposal, close date 31/07/2026, contact Hannah Moore, seller Ethan Cole, last activity 7 Jul 2026, and what’s holding the deal back: no agreed problem statement on record, only one contact identified.\",ours2Alt:\"The live coaching sidebar: 18 minutes 22 seconds in, an objection, “This seems too expensive for what we’re getting,” with a reply to say; then, 22 minutes 10 seconds in, a smart nudge, Surface the decision process, with a question to ask.\",ours3Alt:\"The call after it ends: the recording (40 minutes 10 seconds), its key moments on a timeline, a 62/100 overall score counting up, and the Discover row at 45/100.\",ours4Alt:\"The coaching chat on the call: Coaching on this call, the coach’s line 62/100 overall score, weakest: Discover 45, a question to ask (Draft the discovery questions I skipped on this call), and the chat box, where common questions are typed in turn.\",ours2AltCompact:\"The live coaching sidebar: 18 minutes 22 seconds in, an objection, “This seems too expensive for what we’re getting”; then, 22 minutes 10 seconds in, a smart nudge, Surface the decision process.\",ours3AltCompact:\"The call after it ends: the recording (40 minutes 10 seconds) and its key moments on a timeline.\",ours3RefLabel:\"62/100 overall score\",ours3RefLink:\"See the scorecard ↓\",ours3RefHref:\"#score-receipts\",ours3PickLabel:\"Weakest: Discover 45\",ours3PickLine:\"Discovery came 40 minutes in.\",row2Name:\"A workshop\",row2Col1:\"Weeks before, taught once.\",row2Col2:\"No help while the buyer is talking.\",row2Col3:\"\",row2Col4:\"\",row3Name:\"A note-taker\",row3Col1:\"\",row3Col2:\"Recording. No help.\",row3Col3:\"A summary of what was said. No coaching.\",row3Col4:\"\",row4Name:\"A manager’s review\",row4Col1:\"\",row4Col2:\"No help while the buyer is talking.\",row4Col3:\"\",row4Col4:\"A week later, and only for the calls there’s time to hear.\",takeaway:\"Live coaching helps in the moment. Coaching between calls makes the next call better.\",caption:\"A week is a typical wait for a call review, not a measured figure.\",reviewPill:\"Review: option A, four columns\"};// Which column is the live one (it gets the lit band, the arriving cards and the warmth), which row fades (the\n// workshop), and which row carries the muted recording bar (the note-taker, in the live column). The \"Recording mark\"\n// control (on by default) turns that bar off for a table whose row 3 records nothing (/pipeline-forecasting).\nconst LIVE_COL=2;const FADING_ROW=2;const RECORDING_ROW=3;const TICK=\"M3.5 8.5L6.75 11.75L12.5 4.5\";const CROSS=\"M4.25 4.25L11.75 11.75M11.75 4.25L4.25 11.75\";const KEY={yes:\"Yes\",part:\"Partly\",no:\"No\"};const readMark=s=>{const t=s.trim().toLowerCase();if(/^(yes|y|tick|✓|✔)$/.test(t))return\"yes\";if(/^(part|partly|partial|varies|~)$/.test(t))return\"part\";if(/^(no|n|x|cross|✕|✗)$/.test(t))return\"no\";return null;};const deriveMark=(text,live)=>{const t=text.trim();if(!t||live||/^(no|not)\\b/i.test(t)||/\\bno (help|coaching)\\b/i.test(t))return\"no\";if(/^varies\\b/i.test(t))return\"part\";return\"yes\";};function Mark(props){return /*#__PURE__*/_jsx(\"span\",{className:`xr-mk is-${props.kind}`,\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"svg\",{focusable:\"false\",width:16,height:16,viewBox:\"0 0 16 16\",fill:\"none\",children:/*#__PURE__*/_jsx(\"path\",{d:props.kind===\"no\"?CROSS:TICK,stroke:\"currentColor\",strokeWidth:2,strokeLinecap:\"round\",strokeLinejoin:\"round\"})})});}// N2: a readable crop is never drawn above this many times the app's own size (render width / density).\nconst READABLE_CAP=1.15;// File pixels between stacked boxes.\nconst GAP=24;// Narrower than this, the grid becomes one block per column.\nconst GRID_MIN=1100;// P1 TABLES (22 Oct): drawn only with Key place \"In the header row\" or Takeaway place \"Table foot\", so an instance on the\n// defaults never gets it. The key sits right-aligned over the column heads (the table's header); the foot is the table's\n// last row: under the last rule on the wide grid (a rule above it on the narrow blocks), closed by a rule of its own, the\n// takeaway in the band's text colour with its key phrase bold, the caption under it in the soft tone (8:1 on the band).\nconst PLACE_CSS=`\n.xr[data-keyplace=\"header\"] .xr-key.is-head{justify-content:flex-end;margin:0 0 22px}\n.xr-foot{margin:0;padding:22px 0 24px;border-top:1px solid var(--xr-rule);border-bottom:1px solid var(--xr-rule);display:flex;flex-direction:column;gap:8px}\n.xr-foot .xr-takeaway{margin:0;max-width:64ch;color:var(--xr-ink)}\n.xr-foot .xr-takeaway b{font-weight:600;color:var(--xr-ink)}\n.xr-foot .xr-caption{margin:0;max-width:72ch;color:var(--xr-soft)}\n@container xr (min-width:${GRID_MIN}px){.xr-foot{border-top:0;padding-top:24px}.xr[data-keyplace=\"header\"] .xr-key.is-head{margin-bottom:26px}}\n`;/** \"**key phrase**\" markers in the takeaway: the bold words. Text without markers comes back as it is. */function boldRuns(s){if(!s.includes(\"**\"))return s;return s.split(/\\*\\*(.+?)\\*\\*/g).map((part,i)=>i%2?/*#__PURE__*/_jsx(\"b\",{children:part},i):part);}// The timeline (ms). Wide: when each column starts, from the moment the grid is in view. Then each column's own\n// clock: the live cards, the count-up and the reveal of the real digits, the ring, the chat lines.\nconst AT={1:150,2:900,3:3600,4:5600};const CARD_1=250;const CARD_2=1500;const COUNT_FROM=350;const COUNT_TO=1550;const REVEAL=1700;const PICK=1950;const CHAT_FIRST=200;const CHAT_STEP=280;// Between calls in three beats: each line enters over BETWEEN_LINE ms, then holds BETWEEN_HOLD ms before the next.\nconst BETWEEN_LINE=520;const BETWEEN_HOLD=360;const parseBeats=(s,n)=>{const raw=String(s??\"\").trim();if(!raw)return[];const v=raw.split(/[\\s,]+/).filter(Boolean).map(x=>Math.round(Number(x)));const out=[];for(let i=0;i<n;i++){const b=Number.isFinite(v[i])?v[i]:i>0?out[i-1]:1;out.push(Math.min(3,Math.max(i>0?out[i-1]:1,b,1)));}return out;};const DONE=4200;// The typing starts this long after the between calls chat has landed.\nconst TYPE_AFTER=400;// How much of the grid (wide) or a block (narrow) has to be on screen before it plays.\nconst SEEN_GRID=.25;const SEEN_BLOCK=.35;// House type with real fallbacks. An untouched Framer Font control resolves to Framer's own family (Inter for\n// sans-serif, Fragment Mono for monospace), which is not a pick, so it falls back to the house face too.\nconst SANS='\"Instrument Sans\", \"Instrument Sans Placeholder\", ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Helvetica, Arial, sans-serif';const MONO='\"Geist Mono\", \"Geist Mono Placeholder\", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace';const GENERIC=/^(sans-serif|serif|monospace|system-ui|ui-[a-z-]+|inherit|initial|unset)$/i;const FRAMER_DEFAULT=/^\\s*[\"']?(Inter|Fragment Mono)( Placeholder| Variable| Display)?[\"']?\\s*(,|$)/i;const pickFamily=(f,house)=>{const v=typeof f?.fontFamily===\"string\"?f.fontFamily.trim():\"\";if(!v||GENERIC.test(v)||FRAMER_DEFAULT.test(v))return house;if(v.replace(/[\"']/g,\"\").trim().toLowerCase()===house.split(\",\")[0].replace(/[\"']/g,\"\").trim().toLowerCase())return house;return v.includes(\",\")?v:`${/^[\"']/.test(v)?v:`\"${v}\"`}, ${house}`;};// Framer hands colour controls over as \"rgb(...)\" strings, and as { value } when bound to a token. Every colour goes\n// through color-mix(), which takes any CSS colour, so the only job is to unwrap a token and fall back when empty.\nconst colour=(value,fallback)=>{const v=value&&typeof value===\"object\"&&\"value\"in value?value.value:value;const s=typeof v===\"string\"?v.trim():\"\";return s||fallback;};const parseBox=s=>{const n=String(s??\"\").split(/[\\s,]+/).filter(Boolean).map(Number);if(n.length!==4||n.some(v=>!Number.isFinite(v))||n[2]<=0||n[3]<=0)return null;return{x:n[0],y:n[1],w:n[2],h:n[3]};};const parseSize=s=>{const n=String(s??\"\").split(/[\\sx×,]+/i).filter(Boolean).map(Number);return n.length===2&&n[0]>0&&n[1]>0?[n[0],n[1]]:null;};const pct=(part,whole)=>`${+(part/whole*100).toFixed(4)}%`;const easeOut=t=>1-Math.pow(1-Math.min(1,Math.max(0,t)),3);const CSS=`\n/* isolation: this component's z-indexes rank only inside it, so the site nav (fixed, z 3) and its open menus paint above it */\n.xr{position:relative;isolation:isolate;width:100%;margin:0;container:xr / inline-size;color:var(--xr-ink);font-family:var(--xr-sans);-webkit-font-smoothing:antialiased;--xr-ease:cubic-bezier(.2,.75,.2,1)}\n.xr *{box-sizing:border-box}\n.xr-review{position:absolute;right:0;top:-36px;display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;border:1px dashed var(--xr-accent);background:var(--xr-paper);color:var(--xr-accent);font-family:var(--xr-mono);font-weight:var(--xr-mono-weight);font-size:11px;line-height:1;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;pointer-events:none;z-index:4}\n.xr-mono{font-family:var(--xr-mono);font-weight:var(--xr-mono-weight);font-size:11px;line-height:16px;letter-spacing:.08em;text-transform:uppercase}\n\n/* narrow first: one block per column, in order */\n.xr-grid{position:relative;display:flex;flex-direction:column}\n.xr-label,.xr-rule,.xr-band,.xr-accentrule{display:none}\n.xr-col{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px 0 32px;border-top:1px solid var(--xr-rule)}\n.xr-col.is-live{border-top:0;margin:4px -12px;padding:26px 12px 28px;border-radius:14px;background:var(--xr-band-now);transition:background 1.2s var(--xr-ease)}\n.xr-col.is-live + .xr-col{border-top:0}\n.xr-head{margin:0;display:flex;flex-direction:column;gap:4px}\n.xr-colname{margin:0;display:flex;align-items:center;gap:9px;font-size:21px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--xr-ink)}\n.xr-sub{display:inline-flex;align-items:center;gap:8px;color:var(--xr-soft)}\n.xr-col.is-live .xr-sub{color:var(--xr-accent)}\n.xr-live{position:relative;width:8px;height:8px;border-radius:50%;background:var(--xr-accent);flex:none}\n.xr-live::after{content:\"\";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--xr-accent);opacity:0;animation:xr-pulse 1.8s ease-out infinite}\n@keyframes xr-pulse{0%{opacity:.7;transform:scale(.6)}100%{opacity:0;transform:scale(1.6)}}\n.xr-ours{display:flex;flex-direction:column;gap:14px}\n.xr-who{display:block;font-size:14px;font-weight:600;line-height:1.3}\n.xr-ours .xr-who{color:var(--xr-accent)}\n.xr-line{margin:0;font-size:17px;line-height:1.5;color:var(--xr-ink);text-wrap:pretty;max-width:36ch}\n.xr-shotwrap{display:block;width:100%;max-width:var(--xr-max,440px)}\n.xr-shot{position:relative;display:block;width:100%;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px var(--xr-frame),0 22px 40px -22px rgba(0,0,0,.75),0 2px 6px rgba(0,0,0,.3)}\n.xr-shot.is-open{overflow:visible;border-radius:0;box-shadow:none;background:transparent!important}\n.xr-shot.is-whole img{display:block;width:100%;height:auto}\n.xr-slice{position:absolute;display:block;overflow:hidden;transition:opacity var(--xr-line,.5s) var(--xr-ease),transform var(--xr-line,.55s) var(--xr-ease),box-shadow .5s var(--xr-ease);transform-origin:50% 0}\n.xr-slice[data-in=\"false\"]{opacity:0;transform:translateY(10px) scale(.98)}\n.xr-shot.is-open .xr-slice{border-radius:8px;box-shadow:0 0 0 1px var(--xr-frame),0 14px 28px -18px rgba(0,0,0,.75),0 1px 4px rgba(0,0,0,.3)}\n.xr-slice[data-pick=\"true\"]{box-shadow:0 0 0 2px var(--xr-accent),0 14px 28px -18px rgba(0,0,0,.75)!important}\n.xr-ink{position:absolute;inset:0;display:block;overflow:hidden;border-radius:inherit}\n.xr-slice img{position:absolute;display:block;max-width:none;height:auto;user-select:none;-webkit-user-drag:none}\n/* option C: the product pixels darkened, the cards dark, the peach accents glowing (section 26a) */\n.xr[data-theme=\"dark\"] .xr-ink{filter:var(--xr-filter)}\n.xr[data-theme=\"dark\"] .xr-shot{box-shadow:0 0 0 1px var(--xr-frame),0 24px 44px -22px rgba(0,0,0,.9),0 2px 8px rgba(0,0,0,.5)}\n.xr[data-theme=\"dark\"] .xr-shot.is-open{box-shadow:none}\n.xr[data-theme=\"dark\"] .xr-shot.is-open .xr-slice{box-shadow:0 0 0 1px var(--xr-frame),0 14px 28px -16px rgba(0,0,0,.9),0 1px 4px rgba(0,0,0,.5)}\n.xr-glow{position:absolute;display:block;pointer-events:none;background:color-mix(in srgb,var(--xr-glow) var(--xr-glow-fill),transparent);box-shadow:0 0 0 1.5px color-mix(in srgb,var(--xr-glow) var(--xr-glow-line),transparent),0 0 16px 1px color-mix(in srgb,var(--xr-glow) var(--xr-glow-halo),transparent);mix-blend-mode:screen}\n.xr-hide{position:absolute;display:block}\n${TYPING_CSS}\n.xr-fade{position:absolute;left:0;right:0;bottom:0;height:9%;pointer-events:none}\n.xr-count{position:absolute;inset:0;width:100%;height:100%;transition:opacity .45s var(--xr-ease)}\n.xr-count[data-in=\"false\"]{opacity:0}\n.xr-pick{margin:12px 0 0;display:flex;flex-direction:column;gap:3px;transition:opacity .5s var(--xr-ease),transform .55s var(--xr-ease)}\n.xr-pick[data-in=\"false\"]{opacity:0;transform:translateY(8px)}\n.xr-pick .xr-mono{color:var(--xr-accent)}\n.xr-pick .xr-pickline{font-size:14px;line-height:1.4;color:var(--xr-soft)}\n/* section 29: the one-line scorecard reference under the after crop */\n.xr-ref{margin:12px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:4px;transition:opacity .5s var(--xr-ease),transform .55s var(--xr-ease)}\n.xr-ref[data-in=\"false\"]{opacity:0;transform:translateY(8px)}\n.xr-ref .xr-mono{color:var(--xr-soft)}\n.xr-reflink{font-size:14px;font-weight:600;line-height:1.4;color:var(--xr-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:var(--xr-ring);border-radius:3px;transition:text-decoration-color .2s ease-out}\n.xr-reflink:hover{text-decoration-color:currentColor}\n.xr-reflink:focus-visible{outline:2px solid var(--xr-accent);outline-offset:3px}\n/* R5-QA-12: a 44px tap area at every width (the line is 21px): 11.5px of padding above and below, taken back by the\n   same negative margin, so the link's box is 44px tall while the row, the text and the underline don't move (a\n   positioned hit band would repaint the text, so this is padding) */\n.xr-reflink{padding:11.5px 0;margin:-11.5px 0}\n.xr-others{display:flex;flex-direction:column;gap:14px}\n.xr-other{display:flex;flex-direction:column;gap:3px;padding-left:20px;position:relative;transition:opacity .5s var(--xr-ease),transform .55s var(--xr-ease)}\n.xr-other::before{content:\"\";position:absolute;left:1px;top:7px;width:9px;height:9px;border-radius:50%;border:1.5px solid var(--xr-ring)}\n.xr-other.is-nohelp::before{border-color:var(--xr-mute);border-style:dashed}\n.xr-other .xr-who{color:var(--xr-soft);font-weight:500}\n.xr-other .xr-line{font-size:15px;color:var(--xr-mute)}\n.xr-other.is-nohelp .xr-line{color:var(--xr-mute)}\n.xr-other[data-in=\"false\"]{opacity:0;transform:translateY(8px)}\n.xr-other.is-fading[data-in=\"true\"]{animation:xr-fadeaway 3.2s var(--xr-ease) forwards}\n@keyframes xr-fadeaway{0%{opacity:0;transform:translateY(8px)}14%{opacity:1;transform:none}34%{opacity:1}100%{opacity:.42}}\n.xr-rec{display:flex;align-items:center;gap:8px;margin-top:6px;max-width:150px}\n.xr-rec::before{content:\"\";width:7px;height:7px;border-radius:50%;background:var(--xr-mute);flex:none}\n.xr-rec::after{content:\"\";flex:1;height:3px;border-radius:2px;background:linear-gradient(to right,var(--xr-ring) 0 38%,var(--xr-rule) 38% 100%)}\n.xr-takeaway{margin:32px 0 0;max-width:46ch;font-size:20px;line-height:1.45;font-weight:500;color:var(--xr-ink);text-wrap:balance}\n.xr-caption{margin:12px 0 0;max-width:64ch;font-size:13px;line-height:1.45;color:var(--xr-mute)}\n\n/* Ricavi's cell before it fills */\n.xr-ours > *{transition:opacity .5s var(--xr-ease),transform .6s var(--xr-ease)}\n.xr-ours[data-in=\"false\"] > *{opacity:0;transform:translateY(12px)}\n.xr-ours[data-in=\"false\"] > .xr-shotwrap{transform:translateX(-18px)}\n\n/* section 23: the loop's way back to the start, a short ease instead of the entrance's half second */\n.xr[data-loop=\"reset\"] .xr-slice,.xr[data-loop=\"reset\"] .xr-count,.xr[data-loop=\"reset\"] .xr-pick{transition-duration:var(--xr-fade,.3s);transition-delay:0s}\n\n/* tablet: the crop beside the text */\n@container xr (min-width:600px){\n.xr-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--xr-shotcol,46%));grid-template-areas:\"head shot\" \"line shot\" \"other shot\";grid-template-rows:auto auto 1fr;column-gap:36px;row-gap:16px;align-items:start}\n.xr-col.is-live{margin:4px -16px;padding:28px 16px 30px}\n.xr-head{grid-area:head}\n.xr-ours{display:contents}\n.xr-ours .xr-textcell{grid-area:line}\n.xr-shotwrap{grid-area:shot;justify-self:end}\n.xr-others{grid-area:other;margin-top:8px}\n.xr-takeaway{font-size:22px}\n}\n\n/* wide: the grid, a row per way to improve, a column per moment; the live column is the widest */\n@container xr (min-width:${GRID_MIN}px){\n.xr-grid{display:grid;grid-template-columns:var(--xr-labelw,116px) minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto auto auto auto}\n.xr-col,.xr-col.is-live,.xr-others{display:contents}\n.xr-col > *{position:relative;z-index:1}\n.xr-head{grid-column:var(--c);grid-row:1;padding:0 14px 18px;align-self:start}\n.xr-colname{font-size:19px}\n.xr-ours{display:contents}\n.xr-ours .xr-textcell{grid-column:var(--c);grid-row:2;padding:28px 14px 18px}\n.xr-ours .xr-who,.xr-other .xr-who{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}\n.xr-shotwrap{grid-column:var(--c);grid-row:3;max-width:none;justify-self:stretch;padding:0 14px 36px}\n.xr-other{grid-column:var(--c);grid-row:var(--r);margin:0;padding:22px 14px 22px 34px}\n.xr-other::before{left:14px;top:29px}\n.xr-label{display:block;grid-column:1;padding:22px 14px 22px 0;position:relative;z-index:1}\n.xr-label.is-head{grid-row:1;align-self:start;padding:3px 14px 18px 0;color:var(--xr-mute);text-wrap:balance}\n.xr-label.is-ours{grid-row:2 / 4;padding-top:26px}\n.xr-label.is-other{grid-row:var(--r)}\n.xr-name{display:block;margin:0;font-size:15px;font-weight:500;line-height:1.3;color:var(--xr-soft);text-wrap:balance}\n.xr-label.is-ours .xr-name{font-size:28px;font-weight:600;letter-spacing:-.015em;color:var(--xr-accent)}\n.xr-rule{display:block;grid-column:1 / -1;align-self:end;height:1px;background:var(--xr-rule);position:relative;z-index:1}\n.xr-accentrule{display:block;grid-column:1 / -1;grid-row:2;align-self:start;height:2px;background:var(--xr-accent);position:relative;z-index:1}\n.xr-band{display:block;grid-column:var(--c);grid-row:1 / -1;margin-top:-18px;border-radius:14px;background:var(--xr-band-now);z-index:0;transition:background 1.2s var(--xr-ease)}\n.xr-line{max-width:none}\n.xr-ours .xr-line{font-size:17px}\n.xr-pick{margin-top:14px}\n}\n\n/* Round 4 (Dave, 16 Oct, D16-1 and D16-9): Type scale \"Home\" (the default) sets the table in home's type scale\n   (docs/clarity-pass/feature-ideal/D16-type-scale.md; the site's text styles step at 1200px of viewport): the column\n   heads in H3 (24px, 20px under 1200), the row names in H4 (18 / 17px, 600) and Ricavi's in H3 in peach, the cells\n   in Body (17 / 16px), the takeaway in Body large (20 / 17px), the mono labels in Label (12px), the narrow layout's\n   name tags in Label, and the caption, the pick line and the score link in Small (14px). The row-name column widens\n   from 116 to 168px so \"A note-taker\" and \"A manager's review\" keep whole words at H4. \"Before 16 Oct\" keeps the\n   rules above exactly. */\n.xr[data-type=\"home\"]{--xr-labelw:168px}\n.xr[data-type=\"home\"] .xr-colname{font-size:20px;line-height:1.25;letter-spacing:-.01em}\n.xr[data-type=\"home\"] .xr-mono{font-size:12px;line-height:1.4}\n.xr[data-type=\"home\"] .xr-who{font-family:var(--xr-mono);font-weight:var(--xr-mono-weight);font-size:12px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase}\n.xr[data-type=\"home\"] .xr-line,.xr[data-type=\"home\"] .xr-ours .xr-line,.xr[data-type=\"home\"] .xr-other .xr-line{font-size:16px;line-height:1.55}\n.xr[data-type=\"home\"] .xr-pick .xr-pickline,.xr[data-type=\"home\"] .xr-reflink,.xr[data-type=\"home\"] .xr-caption{font-size:14px;line-height:1.5}\n.xr[data-type=\"home\"] .xr-takeaway{font-size:17px;line-height:1.5;font-weight:400} /* R5-2: Body large is 400 */\n.xr[data-type=\"home\"] .xr-name{font-size:17px;font-weight:600;line-height:1.3}\n.xr[data-type=\"home\"] .xr-label.is-ours .xr-name{font-size:20px;line-height:1.25;letter-spacing:-.01em}\n@media (min-width:1200px){\n.xr[data-type=\"home\"] .xr-colname{font-size:24px}\n.xr[data-type=\"home\"] .xr-line,.xr[data-type=\"home\"] .xr-ours .xr-line,.xr[data-type=\"home\"] .xr-other .xr-line{font-size:17px}\n.xr[data-type=\"home\"] .xr-takeaway{font-size:20px}\n.xr[data-type=\"home\"] .xr-name{font-size:18px}\n.xr[data-type=\"home\"] .xr-label.is-ours .xr-name{font-size:24px}\n}\n\n.xr[data-still=\"true\"] *,.xr[data-still=\"true\"] *::before,.xr[data-still=\"true\"] *::after{animation:none!important;transition:none!important}\n.xr[data-still=\"true\"] .xr-other.is-fading{opacity:.42}\n@media (prefers-reduced-motion:reduce){.xr *,.xr *::before,.xr *::after{animation:none!important;transition:none!important}.xr .xr-other.is-fading{opacity:.42}}\n\n/* N2 (21 Oct): every rule below is scoped to an opt-in attribute or to an element only those modes draw */\n.xr-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}\n.xr-mk{position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;flex:none}\n.xr-mk svg{display:block}\n.xr-mk.is-yes{color:var(--xr-accent);background:var(--xr-paper);box-shadow:0 0 0 1px color-mix(in srgb,var(--xr-accent) 34%,transparent),0 0 12px 2px color-mix(in srgb,var(--xr-accent) 50%,transparent)}\n.xr-mk.is-part{color:var(--xr-soft)}\n.xr-mk.is-no{color:var(--xr-mute)}\n.xr[data-marks=\"ticks\"] .xr-ours .xr-textcell{position:relative;padding-left:34px}\n.xr[data-marks=\"ticks\"] .xr-ours .xr-textcell .xr-mk{top:-2px}\n.xr[data-marks=\"ticks\"] .xr-other{padding-left:34px}\n.xr[data-marks=\"ticks\"] .xr-other::before{display:none}\n.xr[data-marks=\"ticks\"] .xr-other .xr-mk{top:-2px}\n.xr[data-marks=\"ticks\"] .xr-other.is-empty .xr-who{display:flex;align-items:center;min-height:22px;margin-top:-2px}\n.xr[data-marks=\"ticks\"] .xr-other.is-fading[data-in=\"true\"]{animation:none}\n.xr[data-marks=\"ticks\"] .xr-other.is-fading[data-in=\"true\"] .xr-line{animation:xr-fadeline 3.2s var(--xr-ease) forwards}\n@keyframes xr-fadeline{0%,34%{opacity:1}100%{opacity:.42}}\n.xr[data-marks=\"ticks\"][data-still=\"true\"] .xr-other.is-fading{opacity:1}\n.xr[data-marks=\"ticks\"][data-still=\"true\"] .xr-other.is-fading .xr-line{opacity:.42}\n.xr-key{display:flex;flex-wrap:wrap;gap:8px 24px;margin:28px 0 0;padding:0;list-style:none;font-size:14px;line-height:1.45;color:var(--xr-soft)}\n.xr-key li{display:inline-flex;align-items:center;gap:8px}\n.xr-key .xr-mk{position:relative;left:auto;top:auto}\n.xr[data-tint=\"off\"] .xr-col.is-live,.xr[data-tint=\"off\"] .xr-col.is-live + .xr-col{background:none;border-top:1px solid var(--xr-rule)}\n.xr[data-tint=\"off\"] .xr-col.is-live{margin:0;padding:28px 0 32px;border-radius:0}\n.xr[data-tint=\"off\"] .xr-band{display:none}\n@container xr (min-width:${GRID_MIN}px){\n.xr[data-marks=\"ticks\"] .xr-ours .xr-textcell{padding-left:44px}\n.xr[data-marks=\"ticks\"] .xr-ours .xr-textcell .xr-mk{left:12px;top:29px}\n.xr[data-marks=\"ticks\"] .xr-other{padding-left:44px}\n.xr[data-marks=\"ticks\"] .xr-other .xr-mk{left:12px;top:23px}\n.xr[data-marks=\"ticks\"] .xr-other.is-empty{min-height:66px}\n}\n@media (prefers-reduced-motion:reduce){.xr[data-marks=\"ticks\"] .xr-other.is-fading{opacity:1}.xr[data-marks=\"ticks\"] .xr-other.is-fading .xr-line{opacity:.42}}\n`;const parseGlows=s=>String(s??\"\").split(\";\").map(part=>part.split(/[\\s,]+/).filter(Boolean).map(Number)).filter(n=>(n.length===4||n.length===5)&&n.every(v=>Number.isFinite(v))&&n[2]>0&&n[3]>0).map(n=>({x:n[0],y:n[1],w:n[2],h:n[3],r:Math.max(0,n[4]??0)}));// Waiting cards: Hidden (fix-fsl-cloud): the card enters and leaves with its slices (the slices' own easing and fade)\nconst WAIT_CSS=`\n.xr-shot[data-wait]{transition:opacity .5s var(--xr-ease),transform .55s var(--xr-ease)}\n.xr-shot[data-wait=\"true\"]{opacity:0;transform:translateY(10px) scale(.98)}\n.xr[data-loop=\"reset\"] .xr-shot[data-wait]{transition-duration:var(--xr-fade,.3s)}\n@media (prefers-reduced-motion:reduce){.xr-shot[data-wait]{transition:none}}\n`;function Crop(props){const{shot,push,state,dark,glows,typing}=props;const waiting=props.hideWaiting===true&&!push&&!state.open&&state.shown<=0;const size=parseSize(shot.size);const boxes=shot.boxes.map(parseBox).filter(b=>b!==null);const hide=parseBox(shot.hide);const countBox=shot.count?parseBox(shot.countBox):null;if(!shot.image)return null;if(!size||boxes.length===0){return /*#__PURE__*/_jsx(\"span\",{className:\"xr-shot is-whole\",role:\"img\",\"aria-label\":shot.alt,children:/*#__PURE__*/_jsx(\"img\",{src:shot.image,alt:\"\",\"aria-hidden\":\"true\",loading:\"lazy\",decoding:\"async\",draggable:false,...size?{width:size[0],height:size[1]}:{}})});}// FIX-EMPTY: the render's own size on every crop <img>, so Safari's lazy loader has a pre-load box under the window\nconst[iw,ih]=size;const W=Math.max(...boxes.map(b=>b.w));const H=boxes.reduce((sum,b)=>sum+b.h,0)+GAP*(boxes.length-1);let top=0;const placed=boxes.map(b=>{const at=top;top+=b.h+GAP;return{b,at};});return /*#__PURE__*/_jsxs(\"span\",{className:`xr-shot${state.open?\" is-open\":\"\"}`,...props.hideWaiting===true?{\"data-wait\":waiting?\"true\":\"false\"}:{},role:\"img\",\"aria-label\":shot.alt,style:{aspectRatio:`${W} / ${H}`,background:shot.bg,...shot.line?{\"--xr-line\":`${shot.line}ms`}:{},...shot.capPx?{maxWidth:shot.capPx}:{}},children:[placed.map(({b,at},i)=>{let style={};let shown=i<state.shown;// N2: a live column cut to one box lands as the first card would\nif(push&&placed.length===1&&shot.capPx)shown=state.cards>=1;if(push&&placed.length>=2&&i<2){const lift=placed[1].at-placed[0].at;shown=true;if(i===0)style=state.cards>=2?{opacity:1,transform:\"none\"}:{opacity:0,transform:\"scale(.96)\"};else{const up=`translateY(${pct(-lift,b.h)})`;style=state.cards>=2?{opacity:1,transform:\"none\"}:state.cards===1?{opacity:1,transform:up}:{opacity:0,transform:`${up} scale(.96)`};}}const hideHere=hide&&hide.x<b.x+b.w&&hide.x+hide.w>b.x&&hide.y<b.y+b.h&&hide.y+hide.h>b.y?hide:null;const countHere=countBox&&countBox.x>=b.x&&countBox.y>=b.y&&countBox.x+countBox.w<=b.x+b.w&&countBox.y+countBox.h<=b.y+b.h?countBox:null;const typeHere=typing?typeBoxIn(typing.box,b):null;// glows: only in the dark, only the part inside this slice\nconst glowsHere=dark?glows.filter(g=>g.x<b.x+b.w&&g.x+g.w>b.x&&g.y<b.y+b.h&&g.y+g.h>b.y):[];return /*#__PURE__*/_jsxs(\"span\",{className:\"xr-slice\",\"data-in\":shown?\"true\":\"false\",\"data-pick\":state.picked&&shot.pick===i+1?\"true\":\"false\",style:{left:state.open?0:pct((W-b.w)/2,W),top:pct(at,H),width:pct(b.w,W),height:pct(b.h,H),borderRadius:push?shot.radius>0?`${pct(shot.radius,b.w)} / ${pct(shot.radius,b.h)}`:\"1.6% / 3%\":undefined,background:state.open?shot.bg:undefined,...style},children:[/*#__PURE__*/_jsxs(\"span\",{className:\"xr-ink\",children:[/*#__PURE__*/_jsx(\"img\",{src:shot.image,alt:\"\",\"aria-hidden\":\"true\",loading:\"lazy\",decoding:\"async\",draggable:false,width:iw,height:ih,style:{width:pct(iw,b.w),left:pct(-b.x,b.w),top:pct(-b.y,b.h)}}),hideHere?/*#__PURE__*/_jsx(\"span\",{className:\"xr-hide\",style:{left:pct(hideHere.x-b.x,b.w),top:pct(hideHere.y-b.y,b.h),width:pct(hideHere.w,b.w),height:pct(hideHere.h,b.h),background:\"#FFFFFF\"}}):null,countHere?/*#__PURE__*/_jsxs(\"svg\",{className:\"xr-count\",viewBox:`0 0 ${b.w} ${b.h}`,preserveAspectRatio:\"none\",\"aria-hidden\":\"true\",\"data-in\":state.revealed?\"false\":\"true\",children:[/*#__PURE__*/_jsx(\"rect\",{x:countHere.x-b.x-4,y:countHere.y-b.y-10,width:countHere.w+4,height:countHere.h+20,fill:\"#FFFFFF\"}),/*#__PURE__*/_jsx(\"text\",{x:countHere.x-b.x,y:countHere.y-b.y+countHere.h,fontSize:countHere.h/.7,fontWeight:700,letterSpacing:-countHere.h*.03,fill:\"#0A0A0C\",style:{fontFamily:\"var(--xr-sans)\",fontVariantNumeric:\"tabular-nums\"},children:Math.round(state.count)})]}):null,typeHere&&typing?/*#__PURE__*/_jsx(TypeOverlay,{box:typeHere,slice:b,frame:typing.frame,look:typing.look}):null]}),glowsHere.map((g,gi)=>{const x=Math.max(g.x,b.x);const y=Math.max(g.y,b.y);const w=Math.min(g.x+g.w,b.x+b.w)-x;const h=Math.min(g.y+g.h,b.y+b.h)-y;return /*#__PURE__*/_jsx(\"span\",{className:\"xr-glow\",\"aria-hidden\":\"true\",style:{left:pct(x-b.x,b.w),top:pct(y-b.y,b.h),width:pct(w,b.w),height:pct(h,b.h),borderRadius:g.r?`${pct(g.r,w)} / ${pct(g.r,h)}`:0}},gi);})]},i);}),shot.fade&&!state.open?/*#__PURE__*/_jsx(\"span\",{className:\"xr-fade\",style:{background:`linear-gradient(to bottom, transparent, ${shot.bg})`}}):null]});}const str=(p,key,fallback=\"\")=>typeof p[key]===\"string\"?p[key]:key in COPY?COPY[key]:fallback;/**\n * Call Clock\n *\n * What Ricavi is, in four columns: before the call, during the call (live coaching), after the call and between\n * calls (practice and coaching). Ricavi's row is the hero, with a real animated example in every column; a workshop,\n * a note-taker and a manager's review each say where they help, and none of them helps during the call.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1200\n * @framerDisableUnlink\n */export default function CallClock(props){const p=props;const{font,mono,style}=props;const ink=colour(props.ink,\"#F8F8F7\");const accent=colour(props.accent,\"#FF584A\");const paper=colour(props.paper,\"#0A0A0C\");const ref=useRef(null);const blocks=useRef([]);const isStatic=useIsStaticRenderer();const reduced=useReducedMotion()===true;const still=isStatic||reduced;const bl=Number(props.betweenLine);const bh=Number(props.betweenHold);const betweenLine=Number.isFinite(bl)?Math.min(600,Math.max(400,bl)):BETWEEN_LINE;const betweenStep=betweenLine+(Number.isFinite(bh)?Math.min(900,Math.max(150,bh)):BETWEEN_HOLD);const dark=props.theme===\"dark\";const compact=props.moments!==\"full\";const typing=readTyping(p);// Each column's end (ms of its own clock), for the first play's frame loop: the between calls column types for\n// a while after its chat has landed, so the loop runs until the last column's end, not a fixed DONE.\nconst ends=useRef({});// Each column has its own clock: start[c] is when it began (performance.now() ms), null while it waits. The\n// server render and the first client paint show the finished state (every clock long past DONE), and only a\n// grid that has not been reached yet is wound back.\nconst FINISHED=[0,0,0,0,0];const[start,setStart]=useState(FINISHED);const[now,setNow]=useState(1e9);useEffect(()=>{if(still){setStart(FINISHED);setNow(1e9);return;}const fig=ref.current;if(!fig)return;let frame=0;let ticking=false;const started=[0,0,0,0,0];const tick=()=>{const t=performance.now();setNow(t);const live=started.some((s,c)=>c>0&&s!==null&&s!==0&&t-s<Math.max(DONE,(ends.current[c]??0)+120));frame=live?window.requestAnimationFrame(tick):0;ticking=live;};const play=(cols,base,offsets)=>{for(const c of cols)started[c]=base+offsets[c];setStart([...started]);if(!ticking){ticking=true;frame=window.requestAnimationFrame(tick);}};// reached: enough of it is on screen, or it is already above the fold (a jump to an anchor further down)\nconst reached=(el,share)=>{const r=el.getBoundingClientRect();return r.top<window.innerHeight-Math.min(r.height*share,window.innerHeight*.5);};// pending: [element, share, play] waiting to be reached; checked on scroll and resize, each plays once\nlet pending=[];const wide=fig.getBoundingClientRect().width>=GRID_MIN||fig.offsetWidth>=GRID_MIN;if(wide){if(reached(fig,SEEN_GRID))return;for(const c of[1,2,3,4])started[c]=null;setStart([...started]);setNow(0);pending.push([fig,SEEN_GRID,()=>play([1,2,3,4],performance.now(),AT)]);}else{let any=false;for(const c of[1,2,3,4]){const el=blocks.current[c];if(!el||reached(el,SEEN_BLOCK))continue;any=true;started[c]=null;pending.push([el,SEEN_BLOCK,()=>play([c],performance.now(),{[c]:0})]);}if(!any)return;setStart([...started]);setNow(0);}let check=0;const run=()=>{check=0;const due=pending.filter(([el,share])=>reached(el,share));if(!due.length)return;pending=pending.filter(item=>!due.includes(item));due.forEach(([,,go])=>go());if(!pending.length)stop();};const onScroll=()=>{if(!check)check=window.requestAnimationFrame(run);};const stop=()=>{window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onScroll);};window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onScroll,{passive:true});return()=>{stop();if(check)window.cancelAnimationFrame(check);if(frame)window.cancelAnimationFrame(frame);};},[still]);// lt: a column's local time in ms (-1 before it starts, huge when finished or still)\nconst lt=c=>{if(still)return 1e9;const s=start[c];if(s===null)return-1;if(s===0)return 1e9;return now-s;};// Section 23: wide or narrow decides the loop's cascade (wide: the AT offsets; narrow: every block at once).\nconst[wide,setWide]=useState(false);useEffect(()=>{const fig=ref.current;if(!fig||typeof window===\"undefined\")return;const measure=()=>setWide(fig.offsetWidth>=GRID_MIN);measure();const ro=typeof ResizeObserver!==\"undefined\"?new ResizeObserver(measure):null;ro?.observe(fig);return()=>ro?.disconnect();},[]);// Each column's crop: its shot, its beats and when its sequence ends (ms of its own clock).\nconst configs=[1,2,3,4].map(c=>{const d=DEFAULT_SHOTS[c];const k=s=>p[`ours${c}${s}`];const image=typeof k(\"Image\")===\"string\"&&k(\"Image\").trim()?k(\"Image\").trim():d.image;const same=image===d.image;const pickStr=(s,fallback)=>typeof k(s)===\"string\"?k(s):fallback;let boxes=[\"Box\",\"Box2\",\"Box3\",\"Box4\",\"Box5\"].map((s,i)=>pickStr(s,same?d.boxes[i]??\"\":\"\"));// section 29: compact swaps only the boxes still at their defaults (a custom crop is kept)\nconst swap=compact&&same&&(c===2||c===3);if(swap)boxes=boxes.map((b,i)=>b.trim()===(d.boxes[i]??\"\")?COMPACT_BOXES[c][i]??\"\":b);boxes=boxes.filter(b=>b.trim());const countRaw=pickStr(\"Count\",same?d.count:\"\");const altRaw=str(p,`ours${c}Alt`);const altDefault=COPY[`ours${c}Alt`];const shot={image,size:pickStr(\"Size\",same?d.size:\"\"),boxes,hide:pickStr(\"Hide\",same?d.hide:\"\"),fade:swap&&c===3?false:typeof k(\"Fade\")===\"boolean\"?k(\"Fade\"):d.fade,bg:dark?colour(props.darkCard,DARK_CARD):d.bg,alt:swap&&altRaw===altDefault?str(p,`ours${c}AltCompact`):altRaw,max:c===LIVE_COL?360:440,count:swap&&c===3&&countRaw===d.count?\"\":countRaw,countBox:pickStr(\"CountBox\",same?d.countBox:\"\"),pick:Math.round(Number(pickStr(\"Pick\",same?d.pick:\"\")))||0,open:typeof k(\"Open\")===\"boolean\"?k(\"Open\"):same?d.open:false,line:0,radius:swap&&c===LIVE_COL?CARD_RADIUS:0};// N2: a readable crop replaces the column's crop at every width (whole elements, about 13px text at 1280)\n// an optional \"@1.5\" at the end raises the cap for a render whose own text is small (1 to 2x)\nconst tightRaw=pickStr(\"Tight\",\"\");const capM=/@\\s*([0-9]*\\.?[0-9]+)\\s*$/.exec(tightRaw);const capX=capM?Math.min(2,Math.max(1,Number(capM[1]))):READABLE_CAP;const tightBoxes=tightRaw.replace(/@\\s*[0-9]*\\.?[0-9]+\\s*$/,\"\").split(\";\").map(b=>b.trim()).filter(b=>parseBox(b)!==null);const tight=tightBoxes.length>0;if(tight){const ti=pickStr(\"TightImage\",\"\").trim();const tImage=ti||image;const tSize=pickStr(\"TightSize\",\"\").trim()||(ti&&ti!==image?PHONE_SIZE:shot.size);const tAlt=pickStr(\"TightAlt\",\"\").trim();const sz=parseSize(tSize);const tW=Math.max(...tightBoxes.map(b=>parseBox(b).w));const density=sz&&sz[0]>=2e3?2:3;boxes=tightBoxes;Object.assign(shot,{image:tImage,size:tSize,boxes,hide:\"\",fade:false,alt:tAlt||shot.alt,count:\"\",countBox:\"\",pick:0,radius:0,capPx:Math.round(capX*tW/density)});}const nTotal=boxes.length;const beats=shot.open&&nTotal>1?parseBeats(pickStr(\"Beats\",same?d.beats:\"\"),nTotal):[];if(beats.length)shot.line=betweenLine;// the last change plus its entrance (the slices' half second)\nconst landed=c===LIVE_COL?CARD_2+600:shot.count?PICK+600:beats.length?CHAT_FIRST+(beats[beats.length-1]-1)*betweenStep+betweenLine:shot.open&&nTotal>1?CHAT_FIRST+(nTotal-1)*CHAT_STEP+600:600;// section 26: the chat box types once the chat has landed, if this crop holds the type box\nconst typeHere=!tight&&typing.on&&typing.box&&boxes.some(b=>{const box=parseBox(b);return box?typeBoxIn(typing.box,box)!==null:false;});const typeLead=typeHere?landed+TYPE_AFTER:-1;const end=typeHere?typeLead+typing.plan.total:landed;ends.current[c]=end;return{c,shot,beats,nTotal,end,typeLead,tight,sameImage:shot.image===image};});// Section 23: the loop. It starts once the first play has finished (wide: every column; narrow: any column) and\n// then replays the finished columns' crops on its own clock: play = from the start of the cascade, hold and rest =\n// finished, reset = wound back (the slices ease out). A column still on its first play, or not yet reached, keeps\n// its own clock.\nconst{loop:loopOn,loops}=readLoop(props);const firstDone=i=>lt(configs[i].c)>=configs[i].end;const ready=wide?configs.every((_,i)=>firstDone(i)):configs.some((_,i)=>firstDone(i));const offset=c=>wide?AT[c]:0;const loopMs=Math.max(...configs.map(cf=>offset(cf.c)+cf.end));const cycle=useLoop(ref,{on:loopOn&&!still&&ready,playMs:loopMs,loops,amount:SEEN_GRID,begin:\"hold\"});const[loopStart,setLoopStart]=useState({cycle:-1,at:0});useEffect(()=>{if(cycle.phase!==\"play\"||typeof window===\"undefined\")return;const at=performance.now();setLoopStart({cycle:cycle.cycle,at});setNow(at);let frame=0;const tick=()=>{const t=performance.now();setNow(t);frame=t-at<loopMs+100?window.requestAnimationFrame(tick):0;};frame=window.requestAnimationFrame(tick);return()=>window.cancelAnimationFrame(frame);},[cycle.phase,cycle.cycle,loopMs]);// ct: the time a crop is drawn at\nconst ct=i=>{const c=configs[i].c;const t=lt(c);if(cycle.phase===\"off\"||cycle.phase===\"wait\"||!firstDone(i))return t;if(cycle.phase===\"hold\"||cycle.phase===\"rest\")return 1e9;if(cycle.phase===\"reset\"||loopStart.cycle!==cycle.cycle)return-1;// a column whose first play ended inside this loop play (narrow: a block reached late) holds its end state\n// until the next play, so it never jumps into the middle of the loop's timeline (section 26: the typing is long)\nconst s=start[c];if(s!==null&&s>0&&s+configs[i].end>loopStart.at)return 1e9;return now-loopStart.at-offset(c);};const weight=Number(mono?.fontWeight);const monoFamily=pickFamily(mono,MONO);const monoWeight=monoFamily!==MONO&&weight>=100&&weight<=900?weight:500;const mix=share=>`color-mix(in srgb, ${ink} ${share}%, transparent)`;const warm=ct(LIVE_COL-1)>=CARD_2;const gs=Number(props.glowStrength);const glowAt=share=>+((Number.isFinite(gs)?Math.min(100,Math.max(0,gs)):GLOW_STRENGTH)*share).toFixed(1);const rootStyle={...style,\"--xr-ink\":ink,\"--xr-accent\":accent,\"--xr-paper\":paper,\"--xr-sans\":pickFamily(font,SANS),\"--xr-mono\":monoFamily,\"--xr-mono-weight\":String(monoWeight),\"--xr-soft\":mix(74),\"--xr-mute\":mix(52),\"--xr-ring\":mix(46),\"--xr-rule\":mix(13),\"--xr-band\":mix(6),\"--xr-band-now\":warm?`color-mix(in srgb, ${accent} 10%, ${mix(6)})`:mix(6),\"--xr-frame\":mix(14),\"--xr-fade\":`${cycle.fadeMs}ms`,...dark?{\"--xr-frame\":colour(props.darkBorder,DARK_BORDER),\"--xr-filter\":typeof props.darkFilter===\"string\"&&props.darkFilter.trim()?props.darkFilter.trim():DARK_FILTER,\"--xr-glow\":colour(props.glow,GLOW),\"--xr-glow-line\":`${glowAt(.75)}%`,\"--xr-glow-halo\":`${glowAt(.45)}%`,\"--xr-glow-fill\":`${glowAt(.1)}%`}:{}};const look={size:typing.size,ink:typing.ink,cover:typing.cover,font:\"var(--xr-sans)\"};const cols=configs.map(({c,shot,beats,nTotal,typeLead,tight,sameImage},i)=>{// the crop's time (looped); the cells' own entrance keeps the first play's clock. Waiting cards Hidden: a crop with\n// no motion of its own (not the live column, no count, no chat, no typing) holds once its first play is done, so a\n// loop never winds it back to an empty card (fix-fsl-cloud; the live column still replays)\nconst holdStill=props.hideWaiting===true&&c!==LIVE_COL&&!shot.count&&!(shot.open&&nTotal>1)&&typeLead<0&&firstDone(i);const t=holdStill?1e9:ct(i);const frame=typeLead>=0?typing.plan.at(t>=1e8?1e9:t-typeLead):null;const sent=frame!==null&&frame.mode===\"sent\";let state;if(c===LIVE_COL){state={shown:nTotal,cards:t>=CARD_2?2:t>=CARD_1?1:0,count:0,revealed:true,picked:false,open:false};}else if(shot.count){const target=Number(shot.count)||0;const k2=easeOut((t-COUNT_FROM)/(COUNT_TO-COUNT_FROM));state={shown:t>=PICK?nTotal:t>=0?1:0,cards:0,count:target*k2,revealed:t>=REVEAL,picked:t>=PICK,open:shot.open&&nTotal>1};}else if(shot.open&&nTotal>1&&beats.length){// the chat in three beats: every box on a landed beat shows (the beats only rise, so it's the first n)\nconst beat=t<CHAT_FIRST?0:Math.min(3,Math.floor((t-CHAT_FIRST)/betweenStep)+1);state={shown:beats.filter(b=>b<=beat).length,cards:0,count:0,revealed:true,picked:sent,open:true};}else if(shot.open&&nTotal>1){// the chat: its lines arrive one after another\nconst n=t<CHAT_FIRST?0:Math.min(nTotal,Math.floor((t-CHAT_FIRST)/CHAT_STEP)+1);state={shown:n,cards:0,count:0,revealed:true,picked:sent,open:true};}else{state={shown:t>=0?nTotal:0,cards:0,count:0,revealed:true,picked:false,open:false};}return{c,typing:frame?{frame,look,box:typing.box}:null,glows:tight&&!sameImage?[]:parseGlows((g=>compact&&c===LIVE_COL&&g===DEFAULT_GLOW[2]?COMPACT_GLOW2:g)(typeof p[`ours${c}Glow`]===\"string\"?p[`ours${c}Glow`]:DEFAULT_GLOW[c])).filter(// N2: a readable crop keeps only the glows wholly inside one of its boxes (no half outline at an edge)\ng=>!tight||shot.boxes.some(bs=>{const b=parseBox(bs);return b!==null&&g.x>=b.x&&g.y>=b.y&&g.x+g.w<=b.x+b.w&&g.y+g.h<=b.y+b.h;})),head:str(p,`col${c}Head`),sub:str(p,`col${c}Sub`),line:str(p,`ours${c}Line`),shot,state,on:lt(c)>=0,t};});// the other rows: a name and up to four cells (one per column). Older instances with rowNLine and rowNAt\n// (one cell) still work: the line lands in the column rowNAt names.\nconst others=[2,3,4].map(n=>{const cells=[1,2,3,4].map(c=>str(p,`row${n}Col${c}`));const legacyLine=typeof p[`row${n}Line`]===\"string\"?p[`row${n}Line`]:\"\";const legacyAt=Math.round(Number(p[`row${n}At`]));const hasNew=[1,2,3,4].some(c=>typeof p[`row${n}Col${c}`]===\"string\");if(!hasNew&&legacyLine&&legacyAt>=1&&legacyAt<=4){cells.fill(\"\");cells[legacyAt-1]=legacyLine;}// N2: each cell's mark, from \"Row n marks\" or, for a blank token, from the cell itself\nconst tokens=String(typeof p[`row${n}Marks`]===\"string\"?p[`row${n}Marks`]:\"\").split(/[,;|]/);const marks=cells.map((cell,i)=>readMark(tokens[i]??\"\")??deriveMark(cell,i+1===LIVE_COL));return{n,name:str(p,`row${n}Name`),cells,r:2+n,marks};});// N2: \"Ticks and X\" (off by default: the round 3 circles)\nconst ticks=props.marks===\"ticks\";const tintOff=props.liveTint===false;const keyWord=k=>{const v=k===\"yes\"?props.keyYes:k===\"part\"?props.keyPartly:props.keyNo;return typeof v===\"string\"&&v.trim()?v.trim():KEY[k];};const kinds=new Set(ticks?[\"yes\",...others.flatMap(o=>o.marks)]:[]);const oursName=str(p,\"oursName\");const rowsLabel=str(p,\"rowsLabel\");const takeaway=str(p,\"takeaway\");const caption=str(p,\"caption\");const pickLabel=str(p,\"ours3PickLabel\");const pickLine=str(p,\"ours3PickLine\");const refLabel=str(p,\"ours3RefLabel\");const refLink=str(p,\"ours3RefLink\");const refHref=str(p,\"ours3RefHref\").trim();const reviewPill=props.showReviewPill===true?str(p,\"reviewPill\").trim():\"\";const hideWaiting=props.hideWaiting===true;const keyHead=props.keyPlace===\"header\";const footPlace=props.takeawayPlace===\"foot\";const keyList=ticks&&kinds.size>1?/*#__PURE__*/_jsx(\"ul\",{className:`xr-key${keyHead?\" is-head\":\"\"}`,\"aria-label\":\"Key\",children:[\"yes\",\"part\",\"no\"].filter(k=>kinds.has(k)).map(k=>/*#__PURE__*/_jsxs(\"li\",{children:[/*#__PURE__*/_jsx(Mark,{kind:k}),keyWord(k)]},k))}):null;return /*#__PURE__*/_jsxs(\"figure\",{ref:ref,className:\"xr\",\"data-still\":still?\"true\":\"false\",\"data-loop\":cycle.phase,\"data-theme\":dark?\"dark\":\"light\",\"data-type\":/before/i.test(String(props.typeScale??\"\"))?\"before\":\"home\",...ticks?{\"data-marks\":\"ticks\"}:{},...tintOff?{\"data-tint\":\"off\"}:{},...keyHead?{\"data-keyplace\":\"header\"}:{},...footPlace?{\"data-takeaway\":\"foot\"}:{},style:rootStyle,children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS}}),keyHead||footPlace?/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:PLACE_CSS}}):null,hideWaiting?/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:WAIT_CSS}}):null,reviewPill?/*#__PURE__*/_jsx(\"span\",{className:\"xr-review\",\"aria-hidden\":\"true\",children:reviewPill}):null,keyHead?keyList:null,/*#__PURE__*/_jsxs(\"div\",{className:\"xr-grid\",children:[/*#__PURE__*/_jsx(\"span\",{className:\"xr-band\",\"aria-hidden\":\"true\",style:{\"--c\":LIVE_COL+1}}),/*#__PURE__*/_jsx(\"div\",{className:\"xr-label is-head xr-mono\",\"aria-hidden\":\"true\",children:rowsLabel}),/*#__PURE__*/_jsx(\"span\",{className:\"xr-accentrule\",\"aria-hidden\":\"true\"}),/*#__PURE__*/_jsx(\"div\",{className:\"xr-label is-ours\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"span\",{className:\"xr-name\",children:oursName})}),others.map(o=>/*#__PURE__*/_jsx(\"div\",{className:\"xr-label is-other\",\"aria-hidden\":\"true\",style:{\"--r\":o.r},children:/*#__PURE__*/_jsx(\"span\",{className:\"xr-name\",children:o.name})},o.n)),[3,4,5,6].map(r=>/*#__PURE__*/_jsx(\"span\",{className:\"xr-rule\",\"aria-hidden\":\"true\",style:{gridRow:r}},r)),cols.map(col=>{const live=col.c===LIVE_COL;const hasPick=Boolean(col.shot.count&&col.shot.pick>0&&(pickLabel||pickLine));return /*#__PURE__*/_jsxs(\"section\",{ref:el=>{blocks.current[col.c]=el;},className:`xr-col${live?\" is-live\":\"\"}`,style:{\"--c\":col.c+1,\"--xr-max\":`${col.shot.max}px`,\"--xr-shotcol\":live?\"44%\":\"46%\"},children:[/*#__PURE__*/_jsxs(\"h3\",{className:\"xr-head\",children:[/*#__PURE__*/_jsxs(\"span\",{className:\"xr-colname\",children:[live?/*#__PURE__*/_jsx(\"span\",{className:\"xr-live\",\"aria-hidden\":\"true\"}):null,col.head]}),col.sub?/*#__PURE__*/_jsx(\"span\",{className:\"xr-sub xr-mono\",children:col.sub}):null]}),/*#__PURE__*/_jsxs(\"div\",{className:\"xr-ours\",\"data-in\":col.on?\"true\":\"false\",children:[/*#__PURE__*/_jsxs(\"div\",{className:\"xr-textcell\",children:[ticks?/*#__PURE__*/_jsx(Mark,{kind:\"yes\"}):null,/*#__PURE__*/_jsx(\"span\",{className:\"xr-who\",children:oursName}),col.line?/*#__PURE__*/_jsxs(\"p\",{className:\"xr-line\",children:[ticks?/*#__PURE__*/_jsxs(\"span\",{className:\"xr-sr\",children:[keyWord(\"yes\"),\": \"]}):null,col.line]}):null]}),col.shot.image?/*#__PURE__*/_jsxs(\"span\",{className:\"xr-shotwrap\",children:[/*#__PURE__*/_jsx(Crop,{shot:col.shot,push:live,state:col.state,dark:dark,glows:col.glows,typing:col.typing,...hideWaiting?{hideWaiting:true}:{}}),hasPick?/*#__PURE__*/_jsxs(\"p\",{className:\"xr-pick\",\"data-in\":col.state.picked?\"true\":\"false\",children:[pickLabel?/*#__PURE__*/_jsx(\"span\",{className:\"xr-mono\",children:pickLabel}):null,pickLine?/*#__PURE__*/_jsx(\"span\",{className:\"xr-pickline\",children:pickLine}):null]}):null,compact&&col.c===3&&!col.shot.count&&(refLabel||refLink&&refHref)?/*#__PURE__*/_jsxs(\"p\",{className:\"xr-ref\",\"data-in\":col.state.shown>0?\"true\":\"false\",children:[refLabel?/*#__PURE__*/_jsx(\"span\",{className:\"xr-mono\",children:refLabel}):null,refLink&&refHref?/*#__PURE__*/_jsx(\"a\",{className:\"xr-reflink\",href:refHref,children:refLink}):null]}):null]}):null]}),/*#__PURE__*/_jsx(\"div\",{className:\"xr-others\",children:others.filter(o=>ticks||o.cells[col.c-1]).map(o=>{const cell=o.cells[col.c-1];const mark=o.marks[col.c-1];const fading=o.n===FADING_ROW&&col.c===1&&props.workshopFade!==false;const recording=o.n===RECORDING_ROW&&live&&props.recordingMark!==false&&Boolean(cell);return /*#__PURE__*/_jsxs(\"div\",{className:`xr-other${live?\" is-nohelp\":\"\"}${fading?\" is-fading\":\"\"}${ticks&&!cell?\" is-empty\":\"\"}`,\"data-in\":col.on?\"true\":\"false\",style:{\"--r\":o.r},children:[ticks?/*#__PURE__*/_jsx(Mark,{kind:mark}):null,/*#__PURE__*/_jsx(\"span\",{className:\"xr-who\",children:o.name}),cell?/*#__PURE__*/_jsxs(\"p\",{className:\"xr-line\",children:[ticks?/*#__PURE__*/_jsxs(\"span\",{className:\"xr-sr\",children:[keyWord(mark),\": \"]}):null,cell]}):ticks?/*#__PURE__*/_jsx(\"span\",{className:\"xr-sr\",children:keyWord(mark)}):null,recording?/*#__PURE__*/_jsx(\"span\",{className:\"xr-rec\",\"aria-hidden\":\"true\"}):null]},o.n);})})]},col.c);})]}),keyHead?null:keyList,footPlace&&(takeaway||caption)?/*#__PURE__*/_jsxs(\"figcaption\",{className:\"xr-foot\",\"data-test\":\"callclock-foot\",children:[takeaway?/*#__PURE__*/_jsx(\"span\",{className:\"xr-takeaway\",style:{display:\"block\"},children:boldRuns(takeaway)}):null,caption?/*#__PURE__*/_jsx(\"span\",{className:\"xr-caption\",style:{display:\"block\"},children:caption}):null]}):/*#__PURE__*/_jsxs(_Fragment,{children:[takeaway?/*#__PURE__*/_jsx(\"p\",{className:\"xr-takeaway\",children:boldRuns(takeaway)}):null,caption?/*#__PURE__*/_jsx(\"figcaption\",{className:\"xr-caption\",children:caption}):null]})]});}const text=(title,defaultValue,area=false)=>({type:ControlType.String,title,defaultValue,...area?{displayTextArea:true}:{}});const fontControl=(title,defaultFontType,description)=>({type:ControlType.Font,title,description,controls:\"basic\",defaultFontType,displayFontSize:false,displayTextAlignment:false});const NAMES=[\"\",\"Before\",\"During\",\"After\",\"Between\"];const colControls=c=>{const d=DEFAULT_SHOTS[c];const n=NAMES[c];return{[`col${c}Head`]:text(`${n} head`,COPY[`col${c}Head`]),[`col${c}Sub`]:text(`${n} sub`,COPY[`col${c}Sub`]),[`ours${c}Line`]:text(`${n} line`,COPY[`ours${c}Line`],true),[`ours${c}Image`]:{type:ControlType.String,title:`${n} image`,defaultValue:d.image,description:\"A full render's URL. The boxes below cut it, in the file's pixels.\"},[`ours${c}Size`]:text(`${n} size`,d.size),[`ours${c}Box`]:text(`${n} box`,d.boxes[0]??\"\"),[`ours${c}Box2`]:text(`${n} box 2`,d.boxes[1]??\"\"),[`ours${c}Box3`]:text(`${n} box 3`,d.boxes[2]??\"\"),[`ours${c}Box4`]:text(`${n} box 4`,d.boxes[3]??\"\"),[`ours${c}Box5`]:text(`${n} box 5`,d.boxes[4]??\"\"),[`ours${c}Hide`]:text(`${n} hide`,d.hide),[`ours${c}Fade`]:{type:ControlType.Boolean,title:`${n} fade`,defaultValue:d.fade},[`ours${c}Count`]:{...text(`${n} count`,d.count),description:\"A number that counts up over the render's own digits (the box below, file pixels), then gives way to them.\"},[`ours${c}CountBox`]:text(`${n} count box`,d.countBox),[`ours${c}Pick`]:{...text(`${n} pick`,d.pick),description:\"Which box (1 to 5) gets the accent ring once the count has landed.\"},[`ours${c}Open`]:{type:ControlType.Boolean,title:`${n} open`,defaultValue:d.open,description:\"On: the boxes stand apart as cards and arrive one by one (a chat). Off: one framed window.\"},[`ours${c}Alt`]:text(`${n} alt`,COPY[`ours${c}Alt`],true),[`ours${c}Glow`]:{...text(`${n} glow`,DEFAULT_GLOW[c]),description:\"Dark screens only: peach outline and glow over the render's accents, in file pixels (x, y, w, h, radius; boxes separated by ;).\",hidden:p=>p.theme!==\"dark\"},// N2: the readable crop (empty: the crop above, as before)\n[`ours${c}Tight`]:{...text(`${n} readable crop`,\"\"),description:\"Boxes (x, y, w, h in the image's pixels; boxes separated by ;) that replace the crop above at every width: whole elements, narrow enough to read. Drawn at most 1.15x the app's size (end with @1.5 to allow more, up to 2). Empty or none: the crop above.\"},[`ours${c}TightImage`]:{...text(`${n} readable image`,\"\"),description:\"Another full render's URL for the readable crop. Empty: the image above.\",hidden:p=>!String(p[`ours${c}Tight`]??\"\").trim()},[`ours${c}TightSize`]:{...text(`${n} readable size`,\"\"),description:\"The readable image's size in pixels. Empty: 1140x2160 for another image, else the size above.\",hidden:p=>!String(p[`ours${c}Tight`]??\"\").trim()},[`ours${c}TightAlt`]:{...text(`${n} readable alt`,\"\",true),description:\"What the readable crop shows, for screen readers. Empty: the alt above.\",hidden:p=>!String(p[`ours${c}Tight`]??\"\").trim()},...c===4?{ours4Beats:{...text(\"Between beats\",d.beats),description:\"With Open on: the beat (1 to 3) each box arrives on, in box order: 1 the coach opens, 2 the coach's read, 3 the practice prompt. Empty: one box at a time.\"}}:{}};};const rowControls=n=>({[`row${n}Name`]:text(`Row ${n}`,COPY[`row${n}Name`]),[`row${n}Col1`]:text(`Row ${n} before`,COPY[`row${n}Col1`],true),[`row${n}Col2`]:text(`Row ${n} during`,COPY[`row${n}Col2`],true),[`row${n}Col3`]:text(`Row ${n} after`,COPY[`row${n}Col3`],true),[`row${n}Col4`]:text(`Row ${n} between`,COPY[`row${n}Col4`],true),// N2\n    [`row${n}Marks`]:{...text(`Row ${n} marks`,\"\"),description:\"With Marks on Ticks and X: the four cells' marks, before to between, e.g. yes, no, part, no. A blank token reads the cell (empty, live column, No... or No help: no; Varies: partly; other words: yes).\",hidden:p=>p.marks!==\"ticks\"}});addPropertyControls(CallClock,{rowsLabel:text(\"Rows label\",COPY.rowsLabel),oursName:text(\"Ours\",COPY.oursName),...colControls(1),...colControls(2),...colControls(3),moments:{type:ControlType.Enum,title:\"Shared moments\",options:[\"compact\",\"full\"],optionTitles:[\"Compact\",\"Full\"],defaultValue:\"compact\",displaySegmentedControl:true,description:\"Compact (section 29): During shows the two cards' heads only, After the recording and key moments with a one-line link to the scorecard. Full: the round 3 crops.\"},ours2AltCompact:{...text(\"During alt (compact)\",COPY.ours2AltCompact,true),hidden:p=>p.moments===\"full\"},ours3AltCompact:{...text(\"After alt (compact)\",COPY.ours3AltCompact,true),hidden:p=>p.moments===\"full\"},ours3RefLabel:{...text(\"After score line\",COPY.ours3RefLabel),hidden:p=>p.moments===\"full\"},ours3RefLink:{...text(\"After score link\",COPY.ours3RefLink),hidden:p=>p.moments===\"full\"},ours3RefHref:{...text(\"After score URL\",COPY.ours3RefHref),hidden:p=>p.moments===\"full\"},ours3PickLabel:text(\"After pick label\",COPY.ours3PickLabel),ours3PickLine:text(\"After pick line\",COPY.ours3PickLine,true),...colControls(4),...rowControls(2),...rowControls(3),recordingMark:{type:ControlType.Boolean,title:\"Recording mark\",defaultValue:true,description:\"Row 3's muted recording bar (a dot and a part-filled line) under its During line. Off where row 3 records nothing.\"},...rowControls(4),// N2 (21 Oct): ticks, grey X and a key; the live column's tint\nmarks:{type:ControlType.Enum,title:\"Marks\",options:[\"dots\",\"ticks\"],optionTitles:[\"Dots (before 21 Oct)\",\"Ticks and X\"],defaultValue:\"dots\",displaySegmentedControl:true,description:\"Ticks and X: a peach tick (yes), a grey tick (partly) or a grey X (no) in every cell, Ricavi's row all ticks, and a key under the table. Dots: the round 3 circles.\"},keyYes:{...text(\"Key yes\",KEY.yes),hidden:p=>p.marks!==\"ticks\"},keyPartly:{...text(\"Key partly\",KEY.part),hidden:p=>p.marks!==\"ticks\"},keyNo:{...text(\"Key no\",KEY.no),hidden:p=>p.marks!==\"ticks\"},liveTint:{type:ControlType.Boolean,title:\"Live tint\",defaultValue:true,description:\"The tinted band behind the live column (and its card on narrow layouts). Off: a plain column; its head keeps the peach dot.\"},hideWaiting:{type:ControlType.Boolean,title:\"Waiting cards\",defaultValue:false,enabledTitle:\"Hidden\",disabledTitle:\"Shown\",description:\"Hidden: a screen card waiting for its turn in the first cascade is hidden with its crops, and a crop with no motion of its own holds once shown (only the live column replays), so no empty card ever shows. Shown: as built.\"},workshopFade:{type:ControlType.Boolean,title:\"Workshop fade\",defaultValue:true,description:\"Row 2's before cell fades to 42% once shown (the workshop, taught once). Off: its words stay at full contrast (the fade reads about 2:1 on the band).\"},takeaway:text(\"Takeaway\",COPY.takeaway,true),caption:text(\"Caption\",COPY.caption,true),// P1 TABLES (22 Oct): the key and the takeaway on the table, not loose under it (both off by default: as before)\nkeyPlace:{type:ControlType.Enum,title:\"Key place\",options:[\"under\",\"header\"],optionTitles:[\"Under the table\",\"In the header row\"],defaultValue:\"under\",displaySegmentedControl:true,description:\"In the header row: the key sits over the column heads, right-aligned to the table's edge (P1, 22 Oct). Under the table: as before.\",hidden:p=>p.marks!==\"ticks\"},takeawayPlace:{type:ControlType.Enum,title:\"Takeaway place\",options:[\"under\",\"foot\"],optionTitles:[\"Under the table\",\"Table foot\"],defaultValue:\"under\",displaySegmentedControl:true,description:\"Table foot: the takeaway and caption as the table's last row, full width, between rules; **words** in the takeaway set the key phrase bold (P1, 22 Oct). Under the table: as before.\"},betweenLine:{type:ControlType.Number,title:\"Between line\",defaultValue:BETWEEN_LINE,min:400,max:600,step:20,unit:\"ms\",description:\"Each between calls beat's entrance (the live nudge's rhythm).\"},betweenHold:{type:ControlType.Number,title:\"Between hold\",defaultValue:BETWEEN_HOLD,min:150,max:900,step:30,unit:\"ms\",description:\"The hold after each between calls beat before the next.\"},...loopControls(\"Ricavi's row\"),...typingControls(),theme:{type:ControlType.Enum,title:\"Screens\",options:[\"light\",\"dark\"],optionTitles:[\"Light\",\"Dark (option C)\"],defaultValue:\"light\",displaySegmentedControl:true,description:\"Dark: the same real crops darkened by a filter, an approximation (the product has no dark theme).\"},typeScale:{type:ControlType.Enum,title:\"Type scale\",options:[\"home\",\"before\"],optionTitles:[\"Home (16 Oct)\",\"Before 16 Oct\"],defaultValue:\"home\",displaySegmentedControl:true,description:\"Home: the table's text in home's type scale (H3 heads, Body cells, Label tags, Small captions). Before 16 Oct: exactly as before.\"},darkFilter:{...text(\"Dark filter\",DARK_FILTER),description:\"CSS filter on the product pixels only.\",hidden:p=>p.theme!==\"dark\"},darkCard:{type:ControlType.Color,title:\"Dark card\",defaultValue:DARK_CARD,hidden:p=>p.theme!==\"dark\"},darkBorder:{type:ControlType.Color,title:\"Dark border\",defaultValue:DARK_BORDER,hidden:p=>p.theme!==\"dark\"},glow:{type:ControlType.Color,title:\"Glow\",defaultValue:GLOW,description:\"The peach glow on the accents.\",hidden:p=>p.theme!==\"dark\"},glowStrength:{type:ControlType.Number,title:\"Glow strength\",defaultValue:GLOW_STRENGTH,min:0,max:100,step:5,unit:\"%\",hidden:p=>p.theme!==\"dark\"},showReviewPill:{type:ControlType.Boolean,title:\"Show review pill\",defaultValue:false,description:\"A dashed pill above the top right corner, out of the layout, while options A, B and C are under review. Off before launch.\"},reviewPill:{...text(\"Review pill\",COPY.reviewPill),hidden:p=>p.showReviewPill!==true},font:fontControl(\"Font\",\"sans-serif\",\"Instrument Sans when unset.\"),mono:fontControl(\"Mono\",\"monospace\",\"Geist Mono, Medium (500) when unset.\"),ink:{type:ControlType.Color,title:\"Text\",defaultValue:\"#F8F8F7\",description:\"The text colour on the band (Inverse on the near-black band).\"},accent:{type:ControlType.Color,title:\"Burnt peach\",defaultValue:\"#FF584A\"},paper:{type:ControlType.Color,title:\"Band\",defaultValue:\"#0A0A0C\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CallClock\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"1200\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CallClock.map"],"mappings":"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"}