.nfc-diagram{--diagram-dot:#bcbcc1;--diagram-cross:#777;background-image:radial-gradient(var(--diagram-dot).65px,transparent .65px);aspect-ratio:1/1.1;background-position:50%;background-size:22px 22px;min-width:0;margin:0 0 44px;position:relative}.dark .nfc-diagram{--diagram-dot:#3a3a41;--diagram-cross:#8a8a94}.nfc-diagram:before,.nfc-diagram:after{content:"+";color:var(--diagram-cross);font-family:var(--font-mono);font-size:20px;position:absolute;top:10px;left:12px}.nfc-diagram:after{inset:auto 12px 34px auto}.nfc-diagram svg.nfc-plates{width:100%;height:100%;overflow:visible}.nfc-diagram .plate-top{transform:translateY(-10px)}.nfc-diagram .plate-bottom{transform:translateY(10px)}.nfc-diagram .nfc-layer{transform-origin:251px 268px}.nfc-diagram .diagram-label{background:var(--paper);font-family:var(--font-mono);border-left:1px solid var(--ink);color:var(--ink);padding:4px 9px;font-size:12px;line-height:1.6;position:absolute}.nfc-diagram .diagram-label .muted{color:var(--muted-text)}.nfc-diagram .label-top{top:12%;right:0}.nfc-diagram .label-middle{top:48%;left:0}.nfc-diagram .label-bottom{bottom:9%;right:0}.nfc-diagram figcaption{white-space:nowrap;letter-spacing:.05em;color:var(--muted-text);font-size:11px;font-family:var(--font-mono);position:absolute;bottom:-17px;left:50%;transform:translate(-50%)}.nfc-energy{pointer-events:none}.nfc-energy>*{opacity:0}.nfc-trace{stroke-dasharray:15 85;stroke-dashoffset:110px;stroke-linecap:round}.nfc-spark{stroke-dasharray:2 98;stroke-dashoffset:110px;stroke-linecap:round}.nfc-link{stroke-dasharray:12 88;stroke-dashoffset:12px}.nfc-field{transform-origin:251px 268px;transform-box:view-box}.nfc-controls{justify-content:center;display:flex;position:absolute;bottom:-65px;left:0;right:0}.nfc-trigger{border:1px solid var(--silver);background:var(--paper);min-height:44px;color:var(--ink);font-family:var(--font-mono);letter-spacing:.035em;align-items:center;gap:12px;padding:9px 16px;font-size:11px;line-height:1.5;transition:border-color .16s,background .16s;display:inline-flex}.nfc-trigger:hover{background:var(--card);border-color:var(--ink)}.nfc-trigger svg{flex:none;width:17px;height:17px;overflow:visible}.nfc-trigger:disabled,.nfc-trigger[aria-disabled=true]{color:var(--muted-text);cursor:default}.nfc-trigger:disabled:hover,.nfc-trigger[aria-disabled=true]:hover{background:var(--paper);border-color:var(--silver)}.nfc-diagram.nfc-playing .plate-top{animation:nfc-lift 4.2s var(--ease)both}.nfc-diagram.nfc-playing .plate-bottom{animation:nfc-base 4.2s var(--ease)both}.nfc-diagram.nfc-playing .nfc-layer{animation:nfc-levitate 4.2s var(--ease)both}.nfc-diagram.nfc-playing .nfc-orbit{animation:2.9s linear .45s both nfc-orbit}.nfc-diagram.nfc-playing .nfc-field-a{animation:nfc-field 1.7s var(--ease).75s both}.nfc-diagram.nfc-playing .nfc-field-b{animation:nfc-field 1.7s var(--ease)1.15s both}.nfc-diagram.nfc-playing .nfc-trace{animation:2.4s cubic-bezier(.4,0,.2,1) both nfc-travel}.nfc-diagram.nfc-playing .nfc-trace-a{animation-delay:.45s}.nfc-diagram.nfc-playing .nfc-trace-b{animation-delay:.61s}.nfc-diagram.nfc-playing .nfc-trace-c{animation-delay:.77s}.nfc-diagram.nfc-playing .nfc-trace-d{animation-delay:.93s}.nfc-diagram.nfc-playing .nfc-spark{animation:2.4s cubic-bezier(.4,0,.2,1) .45s both nfc-travel}.nfc-diagram.nfc-playing .nfc-chip-halo{animation:2.1s ease-in-out 1.1s both nfc-core}.nfc-diagram.nfc-playing .nfc-chip-light,.nfc-diagram.nfc-playing .nfc-chip-cross{animation:2.1s ease-in-out 1.2s both nfc-core}.nfc-diagram.nfc-playing .nfc-link{animation:.8s cubic-bezier(.4,0,.2,1) 2.45s both nfc-transmit}@keyframes nfc-lift{0%,to{transform:translateY(-10px)}22%,69%{transform:translateY(-36px)}}@keyframes nfc-base{0%,to{transform:translateY(10px)}22%,69%{transform:translateY(23px)}}@keyframes nfc-levitate{0%,to{transform:translateY(0)}28%{transform:translateY(-5px)}57%{transform:translateY(3px)}76%{transform:translateY(-2px)}}@keyframes nfc-travel{0%{opacity:0;stroke-dashoffset:110px}10%{opacity:1}80%{opacity:1}to{opacity:0;stroke-dashoffset:-110px}}@keyframes nfc-orbit{0%{opacity:0;stroke-dashoffset:0}18%,72%{opacity:.6}to{opacity:0;stroke-dashoffset:-30px}}@keyframes nfc-field{0%{opacity:0;transform:scale(.8)}20%{opacity:.45}to{opacity:0;transform:scale(1.48)}}@keyframes nfc-core{0%,to{opacity:0}23%,72%{opacity:1}}@keyframes nfc-transmit{0%{opacity:0;stroke-dashoffset:12px}15%,75%{opacity:.8}to{opacity:0;stroke-dashoffset:-100px}}@media (max-width:720px){.nfc-diagram{aspect-ratio:1;justify-self:center;width:min(100%,440px);margin-bottom:50px}.nfc-diagram .diagram-label{padding:3px 7px;font-size:11px}.nfc-diagram .label-top{top:8%}.nfc-diagram .label-middle{top:46%}.nfc-diagram .label-bottom{bottom:6%}.nfc-diagram figcaption{font-size:10px;bottom:-10px}.nfc-controls{bottom:-64px}.nfc-diagram.nfc-playing .plate-top{animation-name:nfc-lift-mobile}@keyframes nfc-lift-mobile{0%,to{transform:translateY(-10px)}22%,69%{transform:translateY(-28px)}}}@media (min-width:1440px){.nfc-diagram{justify-self:end;width:100%;max-width:540px}}@media (prefers-reduced-motion:reduce){.nfc-energy{display:none}.nfc-diagram.nfc-playing .plate-top{animation:none;transform:translateY(-10px)}.nfc-diagram.nfc-playing .plate-bottom{animation:none;transform:translateY(10px)}.nfc-diagram.nfc-playing .nfc-layer{animation:none;transform:none}.nfc-trigger{transition:none}}@media print{.nfc-controls,.nfc-energy{display:none}.nfc-diagram{margin-bottom:0}.nfc-diagram *{animation:none!important}}
