/*
 * Hero phone mock (HeroPhone.dc.html in the Claude Design project), plain CSS.
 * Three screens crossfade: capture (dark scan), talk (dictation), follow up (next-morning draft).
 * assets/js/phone.js sets data-step on #hero-phone and fills the typed text.
 */

.hp{display:flex;flex-direction:column;align-items:center;gap:20px;font-family:var(--font-sans)}
.hp__device{position:relative;width:316px;height:644px;padding:10px;border-radius:52px;background:#0C1218;box-shadow:0 40px 80px rgba(5,45,73,.22),0 12px 24px rgba(5,45,73,.12)}
.hp__screen{position:relative;width:100%;height:100%;border-radius:42px;overflow:hidden;background:#FFFFFF;color:var(--navy-800)}
.hp .i{width:20px;height:20px}
.hp__step{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;transition:opacity 500ms var(--ease)}
.hp[data-step="0"] [data-step="0"],.hp[data-step="1"] [data-step="1"],.hp[data-step="2"] [data-step="2"]{opacity:1}
.hp__overline{font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--neutral-600)}
.hp__overline--icon{display:flex;align-items:center;gap:6px}
.hp__overline--icon .i{width:14px;height:14px;stroke-width:2.25}
.hp__overline--pad{padding:0 20px 10px}
.hp__ib{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--text-primary)}

/* Status bar and notch */
.hp__status{position:absolute;top:0;left:0;right:0;height:44px;display:flex;align-items:center;justify-content:space-between;padding:4px 26px 0;color:var(--navy-800);font-size:14px;font-weight:600;transition:color 400ms}
.hp[data-step="0"] .hp__status{color:#FFFFFF}
.hp__sicons{display:flex;gap:5px;align-items:center}
.hp__sicons .i{width:15px;height:15px;stroke-width:2.25}
.hp__sicons .i:last-child{width:17px}
.hp__notch{position:absolute;top:10px;left:50%;width:92px;height:26px;margin-left:-46px;border-radius:20px;background:#000000}

/* Step 1: capture */
.hp__step--scan{padding-top:48px;background:#0B151C}
.hp__bar{display:flex;justify-content:space-between;padding:4px 14px}
.hp__scanarea{flex:1;display:flex;justify-content:center;padding-top:18px}
.hp__scanbox{position:relative;width:240px;height:300px}
.hp__badge{position:absolute;left:32px;top:34px;width:176px;height:232px;border-radius:14px;background:#FFFFFF;transform:rotate(-4deg);box-shadow:0 10px 30px rgba(0,0,0,.45);overflow:hidden;display:flex;flex-direction:column;color:var(--navy-800)}
.hp__badge-top{height:40px;background:var(--navy-800);display:flex;align-items:center;justify-content:center}
.hp__badge-top span{width:36px;height:7px;border-radius:4px;background:#0B151C}
.hp__badge-body{padding:12px 16px 0;display:flex;flex-direction:column;gap:2px}
.hp__badge-body .hp__overline{color:var(--teal-700)}
.hp__badge-name{font-size:22px;font-weight:600;line-height:26px}
.hp__badge-co{font-size:15px;line-height:20px}
.hp__badge-role{font-size:13px;line-height:18px;color:var(--neutral-600)}
.hp__badge-qr{margin:auto 0 12px 14px;width:44px !important;height:44px !important}
.hp__scanline{position:absolute;left:14px;right:14px;top:0;height:3px;border-radius:2px;background:var(--teal-300);box-shadow:0 0 14px 3px rgba(79,206,219,.65);animation:nfScan 1.1s cubic-bezier(0.45,0,0.55,1) infinite alternate}
.hp.is-found .hp__scanline{display:none}
@keyframes nfScan{0%{transform:translateY(18px)}100%{transform:translateY(278px)}}
.hp__frame{position:absolute;top:0;left:0;width:240px;display:flex;flex-direction:column;align-items:center;gap:18px}
.hp__corners{position:relative;width:240px;height:300px;transition:transform var(--dur-slow) var(--ease-bounce)}
.hp__corners > span:not(.hp__found){position:absolute;width:44px;height:44px;border-style:solid;border-color:var(--teal-300);transition:border-color var(--dur-base)}
.hp__corners .tl{top:0;left:0;border-width:5px 0 0 5px;border-top-left-radius:24px}
.hp__corners .tr{top:0;right:0;border-width:5px 5px 0 0;border-top-right-radius:24px}
.hp__corners .bl{bottom:0;left:0;border-width:0 0 5px 5px;border-bottom-left-radius:24px}
.hp__corners .br{bottom:0;right:0;border-width:0 5px 5px 0;border-bottom-right-radius:24px}
.hp__found{position:absolute;top:50%;left:50%;width:72px;height:72px;margin:-36px 0 0 -36px;border-radius:50%;background:var(--success);color:#FFFFFF;display:none;place-items:center}
.hp__found .i{width:40px;height:40px;stroke-width:3}
.hp.is-found .hp__corners{transform:scale(1.03)}
.hp.is-found .hp__corners > span:not(.hp__found){border-color:var(--success)}
.hp.is-found .hp__found{display:grid;animation:nfPop var(--dur-slow) var(--ease-bounce)}
@keyframes nfPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.06);opacity:1}100%{transform:scale(1)}}
.hp__hint{padding:10px 18px;border-radius:999px;background:rgba(2,19,31,.72);color:#FFFFFF;font-size:16px;font-weight:500;white-space:nowrap}
.hp__hint-ok,.hp.is-found .hp__hint-wait{display:none}
.hp.is-found .hp__hint-ok{display:inline}
.hp__chips{display:flex;justify-content:center;gap:8px;padding:0 16px 28px}

/* Chips (design system Chip, size sm) */
.chip{display:inline-flex;align-items:center;gap:6px;flex:none;height:36px;padding:0 14px 0 10px;border:0;border-radius:999px;font-family:var(--font-sans);font-size:14px;font-weight:500;white-space:nowrap;background:var(--surface-card);color:var(--text-primary);box-shadow:inset 0 0 0 1.5px var(--border-default);-webkit-tap-highlight-color:transparent;transition:transform var(--dur-slow) var(--ease-bounce),background-color var(--dur-base)}
.chip .i{width:18px;height:18px}
.chip.is-on,.chip[aria-pressed="true"]{background:var(--fill-strong);color:var(--on-fill-strong);box-shadow:none}
button.chip{cursor:pointer}
button.chip:active{transform:scale(var(--press-scale))}
.hp__steps{display:flex;justify-content:center;gap:8px;width:316px}

/* Step 2: talk */
.hp__step--talk{padding-top:44px;background:#FFFFFF}
.hp__nav{display:flex;align-items:center;justify-content:space-between;padding:2px 8px}
.hp__title{font-size:18px;font-weight:600}
.hp__spacer{width:44px}
.hp__contact{display:flex;align-items:center;gap:12px;padding:6px 18px 0}
.hp__contact div{display:flex;flex-direction:column;min-width:0}
.hp__cname{font-size:19px;font-weight:600;line-height:24px}
.hp__cmeta{font-size:14px;line-height:20px;color:var(--neutral-600)}
.hp__rec{display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:14px}
.hp__q{font-size:18px;font-weight:600}
.hp__wave{display:flex;align-items:center;gap:4px;height:42px}
.hp__wave span{width:4px;border-radius:2px;background:var(--teal-400)}
.hp__wave span:nth-child(3n+1){background:var(--teal-600)}
.hp[data-step="1"] .hp__wave span{animation:nfWave var(--d,.5s) ease-in-out var(--dl,0s) infinite alternate}
.hp__recbtn{position:relative;width:96px;height:96px;display:grid;place-items:center}
.hp__recbtn .p1,.hp__recbtn .p2{position:absolute;border-radius:50%;animation:nfPulse 1.4s var(--ease-standard) infinite}
.hp__recbtn .p1{inset:0;background:var(--teal-100)}
.hp__recbtn .p2{inset:12px;background:var(--teal-200);animation-delay:.2s}
@keyframes nfPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.18);opacity:.7}}
.hp__stop{position:relative;width:56px;height:56px;border-radius:50%;background:var(--navy-800);display:grid;place-items:center;box-shadow:var(--shadow-md);transform:scale(.92)}
.hp__stop span{width:17px;height:17px;border-radius:8px;background:#FFFFFF}
.hp__time{font-size:28px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}
.hp__transcript{margin:4px 14px 0;padding:12px 14px;border-radius:16px;background:var(--neutral-50);display:flex;flex-direction:column;gap:6px;min-height:112px}
.hp__text{font-size:15px;line-height:22px}
.hp__lead{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 0;font-size:15px;font-weight:500;color:var(--neutral-600)}
.heat{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 10px;border-radius:999px;background:var(--heat-hot-bg);color:var(--heat-hot-fg);font-size:15px;font-weight:600}
.heat .i{width:17px;height:17px;stroke-width:2.25}

/* Step 3: follow up */
.hp__step--follow{padding-top:44px;background:var(--neutral-50)}
.hp__apphead{display:flex;align-items:center;gap:12px;min-height:72px;padding:8px 16px}
.hp__apphead img{width:44px;height:44px;flex:none}
.hp__apphead span{font-size:30px;line-height:36px;font-weight:600}
.hp__fucard{margin:0 10px;display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:20px;background:#FFFFFF;box-shadow:var(--shadow-md),inset 0 0 0 1px var(--border-subtle)}
.hp__fuhead{display:flex;align-items:center;gap:8px}
.hp__fuhead .hp__overline{flex:1}
.hp__futo{display:grid;grid-template-columns:auto 1fr;column-gap:10px;font-size:15px}
.hp__futo span{color:var(--neutral-500)}
.hp__futo b{font-weight:500}
.hp__fusubj{font-size:19px;line-height:24px;font-weight:600}
.hp__fubody{min-height:168px;font-size:16px;line-height:24px;white-space:pre-line;padding:12px 14px;border-radius:16px;background:var(--ai-bg)}
.hp__fuact{display:flex;gap:10px}
.hp__fuact .btn{flex:1}
.hp__fuact .btn:last-child{flex:1.6}
