/* Lifecycle conveyor: an account travels the policy lifecycle; Anzen completes each stage
   and syncs the AMS bar below, which never moves. Open composition — no boxes. */
.lc-wrap{margin-top:48px}
.lc-track{position:relative;height:268px}
.lc-line{position:absolute;left:2%;right:2%;top:184px;height:1px;background:var(--border-strong,#cad3c7)}
.lc-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:#29a334;transition:width 700ms cubic-bezier(.4,0,.2,1)}
.lc-station{position:absolute;left:var(--x);top:0;transform:translateX(-50%);width:150px;text-align:center}
.lc-cap{position:absolute;left:50%;top:10px;transform:translateX(-50%);white-space:nowrap;font-size:12px;font-weight:500;color:var(--fg1);opacity:0;transition:opacity 300ms ease}
.lc-station.active .lc-cap,.lc-station.done .lc-cap{opacity:1}
.lc-station.done .lc-cap{color:var(--fg2);font-weight:400}
.lc-node{position:absolute;left:50%;top:165px;transform:translateX(-50%);width:38px;height:38px;border-radius:50%;background:var(--surface,#fff);border:1px solid var(--border-strong,#cad3c7);display:flex;align-items:center;justify-content:center;transition:border-color 300ms ease,box-shadow 300ms ease}
.lc-node i{position:absolute;font-size:18px;color:var(--fg2);transition:color 300ms ease,opacity 200ms ease}
.lc-node .i-done{opacity:0;color:#29a334}
.lc-station.active .lc-node{border-color:var(--primary);box-shadow:0 0 0 4px rgba(1,56,6,.08)}
.lc-station.active .lc-node i{color:var(--primary)}
.lc-station.done .lc-node{border-color:#29a334;box-shadow:none}
.lc-station.done .lc-node .i-stage{opacity:0}
.lc-station.done .lc-node .i-done{opacity:1}
.lc-lbl{position:absolute;left:50%;top:214px;transform:translateX(-50%);width:150px;font-size:13px;font-weight:500;color:var(--fg2);line-height:1.3;transition:color 300ms ease}
.lc-station.active .lc-lbl,.lc-station.done .lc-lbl{color:var(--fg1)}
.lc-doc{position:absolute;left:10%;top:34px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2;opacity:0;transition:left 650ms cubic-bezier(.4,0,.2,1),opacity 300ms ease}
.lc-doc.show{opacity:1}
.lc-page{position:relative;width:60px;height:78px;flex:none;background:var(--surface,#fff);border:1px solid var(--divide);border-radius:3px;box-shadow:0 2px 8px rgba(39,39,39,.08);transition:opacity 160ms ease}
.lc-page::before,.lc-page::after{content:"";position:absolute;inset:-1px;background:var(--surface,#fff);border:1px solid var(--divide);border-radius:3px;opacity:0;transition:opacity 250ms ease,transform 250ms ease;z-index:-1}
.lc-doc[data-stack="1"] .lc-page::before,.lc-doc[data-stack="2"] .lc-page::before,.lc-doc[data-stack="3"] .lc-page::before{opacity:1;transform:translate(5px,4px) rotate(1.5deg)}
.lc-doc[data-stack="2"] .lc-page::after,.lc-doc[data-stack="3"] .lc-page::after{opacity:1;transform:translate(10px,8px) rotate(3deg)}
.lc-page .ph{position:absolute;top:7px;left:8px;font-size:16px;color:var(--fg2)}
.lc-page .ph.ok{color:#29a334}
.lc-page-lines{position:absolute;left:8px;right:8px;top:34px;bottom:9px;background:repeating-linear-gradient(to bottom,var(--divide) 0 1px,transparent 1px 8px)}
.lc-doc-t{min-width:0;text-align:center;order:-1;transition:opacity 160ms ease}
.lc-doc-t b{display:block;font-size:12.5px;font-weight:500;color:var(--fg1);line-height:1.25;white-space:nowrap}
.lc-doc-t span{display:block;font-size:11px;font-weight:400;color:var(--fg2);line-height:1.3;white-space:nowrap;margin-top:2px}
.lc-doc.fade .lc-page,.lc-doc.fade .lc-doc-t{opacity:0}
.lc-drop{position:absolute;left:var(--x);top:204px;width:1px;height:74px;background:#29a334;opacity:0;transform:scaleY(0);transform-origin:top;transition:transform 350ms ease,opacity 250ms ease}
.lc-drop.go{opacity:.6;transform:scaleY(1)}
.lc-note{margin:20px 0 0;text-align:center;font-size:15px;font-weight:400;line-height:1.5;color:var(--fg2)}
.lc-ams{display:flex;align-items:center;gap:10px;margin-top:14px;background:var(--surface,#fff);border:1px solid var(--divide);border-radius:var(--radius-md,8px);padding:13px 18px}
.lc-ams .ph-database{font-size:19px;color:var(--fg2);flex:none}
.lc-ams b{font-size:14px;font-weight:500;color:var(--fg1)}
.lc-ams-sub{font-size:12.5px;color:var(--fg2)}
.lc-sync{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:500;color:var(--fg2);border:1px solid transparent;transition:background 250ms ease,color 250ms ease,border-color 250ms ease}
.lc-sync .ph{font-size:13px;flex:none}
.lc-sync.on{background:rgba(41,163,52,.1);border-color:rgba(41,163,52,.4);color:#1c7a26}
@media (max-width:1080px) and (min-width:761px){
  .lc-cap{font-size:11px}
  .lc-station.done .lc-cap{opacity:0}
}
@media (max-width:760px){
  .lc-track{height:250px}
  .lc-lbl{width:76px;font-size:10.5px}
  .lc-cap{left:auto;right:0;transform:none;font-size:11px}
  .lc-station:nth-child(-n+4) .lc-cap{left:0;right:auto}
  .lc-chip,.lc-doc{font-size:11px}
  .lc-page{width:44px;height:57px}
  .lc-page-lines{top:26px}
  .lc-doc-t{display:none}
  .lc-ams-sub{display:none}
}
