/* Shared current family views, minor form and paired-phone composition. */
.dui-minor-name-pair { display:grid; grid-template-columns:1fr 1fr; gap:.75em; }
.dui-minor-name-pair .dui-flow-field { min-width:0; padding:1em .65em; }
.dui-minor-name-pair .dui-flow-field>small { font-size:.68em; left:.4em; white-space:nowrap; max-width:none; }
.dui-family { padding:.5em 1em 0; }
.dui-family>.dui-heading { margin-bottom:1em; flex:none; }
.dui-family>.dui-heading:has(h2:empty) { display:none; }
.dui-family>.dui-heading h2 { font-size:1.375em; }
.dui-family-content>p { margin:.7em 0; }
.dui-family-content .dui-flow-card>p { margin:.8em 0; }
.dui-family-content .dui-flow-card { margin-top:.5em; }
.dui-family .dui-nav { margin:.5em -.4em 0; }
.dui-link-qr-card>h3 { font-size:1em; }
.dui-link-qr-shell { padding:.75em; width:max-content; max-width:100%; margin:.75em auto; border:1px solid var(--dui-line); border-radius:1em; background:white; }
.dui-link-qr-shell danta-branded-qr { width:15em; max-width:100%; }
.dui-link-qr-card>b { font-size:.875em; }
.dui-link-token { display:flex; align-items:center; gap:.5em; padding:.625em; margin-top:.4em; border-radius:.625em; border:1px solid var(--dui-line); background:var(--dui-soft); }
.dui-link-token code { flex:1; min-width:0; overflow-wrap:anywhere; font-size:.8125em; }
.dui-link-expiry { display:flex; align-items:center; justify-content:space-between; font-size:.75em; margin-top:.75em; gap:.5em; }
.dui-link-expiry .dui-icon { width:1.2em; height:1.2em; }
.dui-no-requests { font-size:.875em; color:var(--dui-muted); }
.dui-link-request .dui-flow-actions { align-items:stretch; }
.dui-link-request .dui-flow-action { padding:.7em .6em; font-size:.8125em; }
.dui-link-request small { color:var(--dui-muted); }
.dui-family-toast-host { height:100%; position:relative; }
.dui-family-toast-host>.dui-flow-toast { bottom:5.75em; font-size:3.5cqw; }
.dui-family-more { padding:1em .25em; }
.dui-family-more>h3 { font-size:1.375em; margin-bottom:.75em; }
.dui-family-action-group { overflow:hidden; border:1px solid var(--dui-line); border-radius:1.5em; background:white; }
.dui-family-action-row { display:flex; align-items:center; gap:.85em; padding:1.2em 1em; background:white; border:1px solid var(--dui-line); border-radius:1.25em; }
.dui-family-action-group .dui-family-action-row { border:0; border-radius:0; }
.dui-family-action-group .dui-family-action-row+.dui-family-action-row { border-top:1px solid var(--dui-line); }
.dui-family-action-row>div { display:grid; gap:.35em; flex:1; min-width:0; }
.dui-family-action-row small { color:var(--dui-muted); }
.dui-family-section-title { font-size:1.25em; margin:1em 0!important; }
.dui-supervised-card>div:first-child { display:flex; align-items:center; justify-content:space-between; gap:.6em; }
.dui-supervised-card>p { font-size:.875em; color:var(--dui-muted); }
.dui-supervised-card .dui-flow-action { padding:.75em .8em; font-size:.875em; }
.dui-managed-amount { padding:1.5em; }
.dui-managed-amount .dui-flow-summary { padding:1.25em; margin:1.5em 0; }
.dui-managed-amount .dui-flow-summary>strong { display:block; font-size:1.75em; margin-top:.3em; }
.dui-managed-amount .dui-flow-actions { border-top:1px solid var(--dui-line); padding-top:1em; }
.dui-managed-amount .dui-flow-actions>.dui-flow-action { flex:initial; font-size:.875em; }
.dui-managed-amount .dui-flow-actions { justify-content:flex-end; }
.dui-family-received { display:flex; align-items:center; gap:.6em; padding:1em 0; }
.dui-family-received .dui-avatar { width:2.5em; height:2.5em; }
.dui-family-received>div { flex:1; display:grid; gap:.4em; font-size:.875em; }
.dui-family-received>strong { color:var(--dui-inflow); font-size:.875em; }
.dui-family-received small { color:var(--dui-muted); }
.dui-family-overlay { position:relative; }
.dui-family-backdrop { position:absolute; inset:0; opacity:.2; pointer-events:none; }
.dui-family-backdrop .danta-ui { font-size:inherit; }
.dui-family-confirm { position:relative; margin:auto 1.5em; padding:1.5em; border-radius:1.75em; background:var(--dui-paper); box-shadow:0 0 0 50em #0b1c1450; }
.dui-family-confirm h3 { margin-bottom:.8em; }
.dui-family-confirm p { font-size:.875em; margin:.8em 0; line-height:1.4; }
.dui-family-warning { padding:.75em; border:1px solid #e3c16b; border-radius:.75em; background:#fff3d2; }
.dui-family-warning p { font-size:.8125em; }
.dui-family-confirm .dui-flow-action { font-size:.8125em; padding:.75em .8em; }
.dui-family-sheet { position:absolute; inset:auto 0 0; padding:1em; border-radius:1.75em 1.75em 0 0; background:var(--dui-paper); box-shadow:0 -1em 3em #0b1c141c; }
.dui-family-sheet>i { display:block; width:2em; height:.25em; background:var(--dui-muted); opacity:.3; border-radius:1em; margin:0 auto 1em; }
.dui-family-sheet .dui-family-action-row { border:0; background:transparent; }
.dui-family-scanner .dui-link-sent { position:absolute; top:.7em; left:.7em; right:.7em; background:#237848; color:white; border-radius:.75em; padding:.85em; font-size:.85em; }
.dui-link-sent small { display:block; margin-top:.5em; }
.dui-family-scanner .dui-nav { margin-top:.6em; }
.dui-dual-screen.is-active .scan-line { animation-play-state:running; }
.dual-tutorial-player[data-phone-design="current"] .dual-phone-card .danta-device { width:100%; border-width:7px; border-radius:42px; }
.dual-tutorial-player[data-phone-design="current"] .dual-phone-role { color:var(--pine); }
.dual-tutorial-player[data-phone-design="current"] .dual-phone-glow { background:linear-gradient(140deg,#2c996630,#d8f0e2eb); }
@media(min-width:901px) {
  .dual-tutorial-player[data-phone-design="current"] .dual-tutorial-story-grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:40px; }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-card { width:min(290px,calc((100svh - 230px) * .4875)); }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-sticky { top:80px; height:calc(100svh - 145px); }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-stage { padding-bottom:60px; gap:15px; }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-caption { bottom:18px; left:50%; right:auto; transform:translateX(-50%); width:max-content; text-align:center; }
}
@media(max-width:900px) {
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-stage { width:100%; gap:8px; }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-card { width:min(42vw,calc((51svh - 40px) * .4875)); }
  .dual-tutorial-player[data-phone-design="current"] .dual-phone-card .danta-device { border-width:5px; border-radius:30px; }
  .dual-tutorial-player[data-phone-design="current"] .dui-viewport { border-radius:25px; }
  .dual-tutorial-player[data-phone-design="current"] .dui-island { top:5px; height:10px; }
  .dual-tutorial-player[data-phone-design="current"] .tutorial-step { padding-top:calc(var(--header-height) + 54svh); padding-bottom:80px; }
  .dual-tutorial-player[data-phone-design="current"] .tutorial-step h2 { font-size:clamp(1.6rem,6vw,2.5rem); }
}
@media(prefers-reduced-motion:reduce) {
  .dui-dual-screen.is-active .scan-line { animation:none; }
}
