:root{--navy:#0a2440;--navy2:#15406e;--gold:#f2b33d;--gold2:#c98a14;--active:#8a5a00;--active-bg:#fff9ec;--bg:#f3f4f7;--card:#fff;--line:#e4e7ee;--line2:#e3e6eb;--input:#c9ced6;--ink:#16212f;--muted:#5f6b7c;--sub:#b7c4d6;--faint:#8c96a6;--fill:#eef3fa;--ok:#1d9e5f;--ok-bg:#e7f6ee;--err:#d64545;--backdrop:#0a24408c;--shadow:0 1px 3px #0a244014;--serif:"ZK Frank","Frank Ruhl Libre",Georgia,serif;--sans:"ZK Heebo",Heebo,system-ui,sans-serif;--display:"ZK Secular","Secular One",var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;min-height:100dvh}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}.screen{flex-direction:column;min-height:100dvh;display:flex}.wrap{width:100%;max-width:520px;margin:0 auto}.content{flex:1;width:100%;max-width:520px;margin:0 auto;padding:22px 18px 0}.actions{padding:16px 18px calc(28px + env(safe-area-inset-bottom));flex-direction:column;gap:10px;width:100%;max-width:520px;margin:0 auto;display:flex}.actions .note{text-align:center;color:var(--muted);font-size:12.5px}.band{background:var(--navy);color:#fff;padding:calc(18px + env(safe-area-inset-top)) 0 20px}.band .in{align-items:center;gap:12px;max-width:520px;margin:0 auto;padding:0 24px;display:flex}.band img{flex:none;width:auto;height:36px}.band .wm{font-family:var(--display);font-size:20px;line-height:1.1}.band .firm{color:var(--sub);margin-top:2px;font-size:12px}.gold{background:var(--gold);height:3px}.band.compact{z-index:20;padding:calc(12px + env(safe-area-inset-top)) 0 13px;position:sticky;top:0}.band.compact .in{gap:10px;max-width:860px;padding:0 20px}.band.compact .t{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:15px;font-weight:600;overflow:hidden}.band.compact .p{color:var(--sub);white-space:nowrap;font-size:12.5px}.sticky-gold{z-index:20;position:sticky}.card{background:var(--card);box-shadow:var(--shadow);border-radius:6px;padding:28px 22px}.card+.card{margin-top:12px}.card.row{align-items:center;gap:10px;padding:14px 18px;display:flex}.card.row .grow{flex:1;font-size:14.5px;font-weight:500}.card.row .side{color:var(--muted);font-size:13px}.h1{font-family:var(--serif);color:var(--navy);margin:0;font-size:26px;font-weight:700;line-height:1.2}.lead{color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.6}.lead b,.lead .em{color:var(--ink);font-weight:500}.small{color:var(--muted);font-size:13.5px}.btn{background:var(--navy);color:#fff;border:0;border-radius:6px;justify-content:center;align-items:center;gap:10px;width:100%;height:54px;padding:0 20px;font-size:16.5px;font-weight:600;text-decoration:none;transition:opacity .15s,transform 50ms;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.38;pointer-events:none}.btn.sm{width:auto;height:46px;padding:0 18px;font-size:15.5px}.btn.ghost{color:var(--navy);box-shadow:inset 0 0 0 1px var(--input);background:#fff}.link{min-height:44px;color:var(--navy2);background:0 0;border:0;justify-content:center;align-items:center;padding:0 6px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.link.u{text-underline-offset:3px;text-decoration:underline}.link:disabled{color:var(--faint)}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite spin}.spinner.dark{border-color:#0a244026;border-top-color:var(--navy)}@keyframes spin{to{transform:rotate(360deg)}}.otp{direction:ltr;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:26px;display:grid;position:relative}.otp .cell{border:1px solid var(--line2);height:54px;font-family:var(--display);color:var(--navy);background:#fafbfc;border-radius:6px;place-items:center;font-size:24px;transition:border-color .15s;display:grid}.otp .cell.filled{border-color:var(--input);background:#fff}.otp .cell.active{border:2px solid var(--navy);background:#fff}.otp .cell.active:after{content:"";background:var(--navy);width:1.5px;height:24px;animation:1.1s step-end infinite blink}.otp.err .cell{border-color:var(--err);color:var(--err);background:#fff}.otp input{opacity:0;color:#0000;caret-color:#0000;background:0 0;border:0;width:100%;height:100%;font-size:16px;position:absolute;inset:0}@keyframes blink{50%{opacity:0}}.otp-meta{color:var(--muted);align-items:center;min-height:44px;margin-top:14px;font-size:13.5px;display:flex}.msg{color:#9e2e2e;background:#fdecec;border-radius:6px;gap:8px;margin-top:14px;padding:10px 12px;font-size:14px;line-height:1.55;display:flex}.msg.info{background:var(--active-bg);color:var(--active)}.dev{color:var(--faint);margin-top:12px;font-size:12.5px}.docs{max-width:860px;margin:0 auto;padding:14px 12px 0}.docs .intro{color:var(--muted);margin:2px 6px 12px;font-size:14px;line-height:1.6}.docs .zk-doc{margin:0 0 12px}.docs .finish{box-shadow:var(--shadow);background:#fff;border-radius:6px;margin-bottom:12px;padding:18px}.check{color:var(--ink);cursor:pointer;align-items:flex-start;gap:12px;font-size:14.5px;line-height:1.6;display:flex}.check input{appearance:none;border:1.5px solid var(--input);cursor:pointer;background:#fff;border-radius:5px;flex:none;place-items:center;width:24px;height:24px;margin:1px 0 0;display:grid}.check input:checked{background:var(--navy);border-color:var(--navy)}.check input:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:11px;transform:rotate(45deg)translate(-1px,-1px)}.zk-doc .sign.client.live{background:0 0;border:0;padding:0}.zk-doc .sign.client.live>:not(.slot){display:none}.slot{border:1.5px dashed var(--input);width:100%;height:100%;min-height:96px;font-family:var(--sans);text-align:center;background:#fafbfc;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px;scroll-margin:90px 0 260px;display:flex}.slot .a{color:var(--muted);font-size:14px;font-weight:600}.slot .b{color:var(--faint);font-size:12px}.slot.active{border:2px solid var(--gold);background:var(--active-bg)}.slot.active .a,.slot.active .b{color:var(--active)}.slot.signed{border:1px solid var(--line2);cursor:default;background:#fff;justify-content:space-between}.slot.signed img{max-width:90%;max-height:52px;margin:auto;display:block}.slot.signed .b{color:var(--ok)}.slot .nm{color:var(--muted);font-size:11.5px}.places{inset-inline:0;z-index:30;padding:10px 18px calc(18px + env(safe-area-inset-bottom));background:#fff;border-radius:18px 18px 0 0;position:fixed;bottom:0;box-shadow:0 -8px 24px #0a24401a}.places .in{flex-direction:column;gap:10px;max-width:560px;margin:0 auto;display:flex}.places .grab{background:#d5d9e0;border:0;border-radius:2px;align-self:center;width:36px;height:4px;padding:0}.places .head{text-align:right;background:0 0;border:0;align-items:center;width:100%;padding:0;font-size:14px;display:flex}.places .head .t{color:var(--navy);flex:1;font-weight:600}.places .head .c{color:var(--muted)}.places ul{flex-direction:column;gap:2px;max-height:min(30vh,200px);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.places li button{width:100%;color:var(--muted);text-align:right;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;min-height:38px;padding:8px 10px;font-size:13.5px;display:flex}.places li.cur button{background:var(--active-bg);color:var(--ink);font-weight:500}.places li.done button{color:var(--ink)}.places .dot{border:1.5px solid var(--input);border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.places li.cur .dot{border:2px solid var(--gold2)}.places li.done .dot{background:var(--ok-bg);color:var(--ok);border:0}.places li .lbl{flex:1}.places li .now{color:var(--active);font-size:12.5px}.places li .tm{color:var(--ok);font-size:12px}.places .btn{height:52px}.places .redo{align-self:center;min-height:36px;font-size:13.5px}.backdrop{background:var(--backdrop);z-index:50;animation:.2s fade;position:fixed;inset:0}.modal{z-index:51;inset:max(48px, env(safe-area-inset-top)) 14px max(24px, env(safe-area-inset-bottom));background:#fff;border-radius:10px;flex-direction:column;max-width:520px;max-height:620px;margin:auto;animation:.22s cubic-bezier(.2,.8,.2,1) pop;display:flex;position:fixed;overflow:hidden}.modal .mh{background:var(--navy);color:#fff;align-items:center;padding:16px 20px;display:flex}.modal .mh .t{flex:1;font-size:16px;font-weight:600}.modal .mh button{color:var(--sub);background:0 0;border:0;min-height:36px;padding:0 4px;font-size:14px}.modal .mb{flex-direction:column;flex:1;gap:14px;min-height:0;padding:20px;display:flex}.modal .mb p{color:var(--muted);margin:0;font-size:15px;line-height:1.6}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:.4;transform:scale(.97)}}.pad{border:1px solid var(--input);touch-action:none;-webkit-user-select:none;user-select:none;background:#fcfcfd;border-radius:6px;flex:1;min-height:220px;position:relative}.pad canvas{border-radius:6px;width:100%;height:100%;position:absolute;inset:0}.pad .base{inset-inline:20px;border-top:1px solid var(--ink);pointer-events:none;position:absolute;bottom:50px}.pad .nm{bottom:24px;color:var(--muted);pointer-events:none;font-size:13px;position:absolute;inset-inline-start:20px}.pad .clear{top:6px;min-height:36px;color:var(--navy2);background:0 0;border:0;padding:0 6px;font-size:14px;font-weight:500;position:absolute;inset-inline-end:8px}.pad .hint{top:38%;text-align:center;color:#b4bcc8;pointer-events:none;font-size:15px;position:absolute;inset-inline:0}.okmark{background:var(--ok-bg);width:48px;height:48px;color:var(--ok);border-radius:50%;place-items:center;display:grid}.facts{border-top:1px solid var(--line2);margin-top:20px;font-size:14px}.facts div{border-bottom:1px solid #f0f1f4;gap:10px;padding:11px 0;display:flex}.facts div:last-child{border-bottom:0}.facts span:first-child{color:var(--muted);flex:1}.facts .ok{color:var(--ok)}.items{flex-direction:column;margin-top:18px;display:flex}.item{border-top:1px solid #f0f1f4;padding:16px 0}.item:first-child{border-top:1px solid var(--line2)}.item .row{align-items:flex-start;gap:12px;display:flex}.item .ic{background:var(--fill);width:40px;height:40px;color:var(--navy2);border-radius:50%;flex:none;place-items:center;display:grid}.item.done .ic{background:var(--ok-bg);color:var(--ok)}.item .tx{flex:1;min-width:0}.item .lbl{color:var(--ink);font-size:15.5px;font-weight:600;line-height:1.4}.item .lbl .tag{color:var(--muted);margin-inline-start:6px;font-size:12px;font-weight:400}.item .hn{color:var(--muted);margin-top:2px;font-size:13.5px;line-height:1.5}.item .acts{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.item .prev{border:1px solid var(--line2);background:#fafbfc;border-radius:6px;margin-top:12px;padding:6px}.item .prev img{object-fit:contain;border-radius:4px;width:100%;max-height:220px;display:block}.item .prev .file{text-align:center;color:var(--muted);padding:18px;font-size:14px}.bar{background:var(--line2);border-radius:2px;height:4px;margin-top:10px;overflow:hidden}.bar i{background:var(--navy2);height:100%;transition:width .2s;display:block}.status-ok{color:var(--ok);align-items:center;gap:6px;margin-top:8px;font-size:13.5px;font-weight:500;display:inline-flex}.status-err{color:var(--err);margin-top:8px;font-size:13.5px}.viewer{z-index:60;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.viewer .band.compact{position:static}.viewer .band.compact button{color:var(--sub);background:0 0;border:0;min-height:36px;font-size:14px}.viewer .pages{flex:1;padding:14px 12px 240px;overflow:auto}.viewer .pg{box-shadow:var(--shadow);background:#fff;border-radius:4px;max-width:820px;margin:0 auto 12px;position:relative;overflow:hidden}.viewer .pg canvas{width:100%;height:auto;display:block}.pslot{border:2px solid var(--gold);font-family:var(--sans);color:var(--active);background:#fff9ecd9;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;padding:0;font-size:11px;font-weight:600;line-height:1.2;display:flex;position:absolute}.pslot.pending{border:1.5px dashed var(--input);color:var(--muted);background:#fafbfcd9}.pslot img{max-width:100%;max-height:100%}.pslot.signed{background:0 0;border:1px solid #1d9e5f59}@media (min-width:821px){.docs{padding-top:24px}}.busy{z-index:100;touch-action:none;background:#0a24409e;outline:none;place-items:center;padding:24px;animation:.18s fade;display:grid;position:fixed;inset:0}@supports ((-webkit-backdrop-filter:blur(6px)) or (backdrop-filter:blur(6px))){.busy{-webkit-backdrop-filter:blur(6px);background:#0a244059}}.busy-card{text-align:center;background:#fff;border-radius:10px;flex-direction:column;align-items:center;gap:14px;width:min(320px,100%);padding:26px 24px 22px;animation:.22s cubic-bezier(.2,.8,.2,1) pop;display:flex;box-shadow:0 18px 50px #0a244040}.busy-card p{color:var(--ink);min-height:24px;margin:0;font-size:15.5px;font-weight:500;line-height:1.55}.busy-card.err p{color:var(--ink);font-weight:400}.busy-card.err .btn{height:50px}.busy-mark{place-items:center;width:72px;height:72px;display:grid;position:relative}.busy-mark img{width:34px;height:auto;position:relative}.busy-mark .ring{border:3px solid #f2b33d38;border-top-color:var(--gold);border-radius:50%;animation:1s linear infinite spin;position:absolute;inset:0}.busy-bar{background:var(--line2);border-radius:3px;width:100%;height:5px;overflow:hidden}.busy-bar i{background:var(--gold2);height:100%;transition:width .2s;display:block}@media (prefers-reduced-motion:reduce){.busy-mark .ring{border-color:#f2b33d8c;animation:2.4s ease-in-out infinite breathe}.busy,.busy-card{animation:none}}@keyframes breathe{50%{opacity:.45}}.screen>.content,.screen>.actions,.docs,.card{animation:.22s ease-out both enter}.screen>.actions{animation-delay:40ms}@keyframes enter{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.screen>.content,.screen>.actions,.docs,.card{animation:none}}
