.zg{--zg-navy:#0d1124;--zg-green:#107467;--zg-green-hi:#2aa392;--zg-title:var(--zg-navy);--zg-sec:color-mix(in srgb, var(--zg-navy) 66%, #fff);--zg-ter:color-mix(in srgb, var(--zg-navy) 50%, #fff);--zg-soft:color-mix(in srgb, var(--zg-navy) 3.5%, #fff);--zg-mid:color-mix(in srgb, var(--zg-navy) 7%, #fff);--zg-border:color-mix(in srgb, var(--zg-navy) 13%, #fff);--zg-border-soft:color-mix(in srgb, var(--zg-navy) 8%, #fff);--zg-ok:#0e6b4a;--zg-ok-bg:#e4f3ee;font-family:var(--font-montserrat), "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;color:color-mix(in srgb, var(--zg-navy) 82%, #fff);font-size:15px;line-height:1.6}.zg *,.zg :before,.zg :after{box-sizing:border-box}.zg :where(h2,h3,p){letter-spacing:normal;margin:0}.zg button{font:inherit}.zg svg{flex:none}.zg :focus-visible{outline:2px solid var(--zg-green);outline-offset:2px}.zg-cb{z-index:900;width:440px;max-width:calc(100vw - 48px);box-shadow:0 24px 64px color-mix(in srgb, var(--zg-navy) 26%, transparent), 0 2px 6px color-mix(in srgb, var(--zg-navy) 8%, transparent);border:1px solid var(--zg-border-soft);opacity:0;pointer-events:none;background:#fff;border-radius:18px;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s;position:fixed;bottom:24px;left:24px;overflow:hidden;transform:translateY(16px)}.zg-cb.zg-show{opacity:1;pointer-events:auto;transform:none}.zg-top{gap:14px;padding:22px 22px 0;display:flex}.zg-ic{background:color-mix(in srgb, var(--zg-green) 10%, #fff);border-radius:12px;flex:none;place-items:center;width:44px;height:44px;display:grid}.zg-ic svg{width:24px;height:24px}.zg-cb h2{color:var(--zg-title);font-size:17px;font-weight:600;line-height:1.35}.zg-cb p{color:var(--zg-sec);margin-top:6px;font-size:13.5px;line-height:1.6}.zg a{color:var(--zg-green);font-weight:600;text-decoration:none}.zg a:hover{text-decoration:underline}.zg-act{grid-template-columns:1fr 1fr;gap:10px;padding:18px 22px 0;display:grid}.zg-choice{border:1.5px solid var(--zg-navy);background:var(--zg-navy);color:#fff;cursor:pointer;border-radius:8px;height:46px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s}.zg-choice:hover{background:color-mix(in srgb, var(--zg-navy) 86%, var(--zg-green))}.zg-more{justify-content:space-between;align-items:center;gap:10px;padding:12px 22px 18px;display:flex}.zg-linkbtn{cursor:pointer;color:var(--zg-green);background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-size:13.5px;font-weight:600;display:inline-flex}.zg-linkbtn svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.zg-more small{color:var(--zg-ter);font-size:12px}.zg-ovl{z-index:1000;background:color-mix(in srgb, var(--zg-navy) 58%, transparent);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.zg-sheet{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:640px;max-height:min(760px,100vh - 48px);display:flex;overflow:hidden;box-shadow:0 30px 80px #00000059}.zg-sh-h{border-bottom:1px solid var(--zg-border-soft);justify-content:space-between;align-items:flex-start;gap:12px;padding:24px 26px 14px;display:flex}.zg-sh-h h2{color:var(--zg-title);font-size:20px;font-weight:600}.zg-sh-h p{color:var(--zg-sec);max-width:52ch;margin-top:4px;font-size:13.5px}.zg-x{cursor:pointer;width:42px;height:42px;color:var(--zg-ter);background:0 0;border:0;border-radius:10px;place-items:center;margin:-6px -10px 0 0;display:grid}.zg-x:hover{background:var(--zg-soft);color:var(--zg-title)}.zg-x svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;width:19px;height:19px}.zg-sh-b{padding:8px 26px 18px;overflow:auto}.zg-cat{border-bottom:1px solid var(--zg-border-soft);padding:16px 0}.zg-cat:last-child{border-bottom:0}.zg-cat-h{align-items:center;gap:14px;display:flex}.zg-cat-h .zg-t{flex:1;min-width:0}.zg-cat-h h3{color:var(--zg-title);flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.zg-tag{background:var(--zg-ok-bg);color:var(--zg-ok);border-radius:99px;padding:2px 9px;font-size:11px;font-weight:600}.zg-cat-h p{color:var(--zg-sec);margin-top:3px;font-size:13px;line-height:1.55}.zg-sw{flex:none;width:46px;height:26px;position:relative}.zg-sw input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute;inset:0}.zg-sw input:disabled{cursor:not-allowed}.zg-sw .zg-tr{background:var(--zg-border);border-radius:13px;transition:all .2s;position:absolute;inset:0}.zg-sw .zg-tr:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.zg-sw input:checked+.zg-tr{background:var(--zg-green)}.zg-sw input:checked+.zg-tr:after{left:23px}.zg-sw input:disabled+.zg-tr{opacity:.55}.zg-sw input:focus-visible+.zg-tr{outline:2px solid var(--zg-green);outline-offset:2px}.zg-det{margin-top:10px}.zg-det summary{cursor:pointer;color:var(--zg-green);align-items:center;gap:6px;padding:4px 0;font-size:12.5px;font-weight:600;list-style:none;display:inline-flex}.zg-det summary::-webkit-details-marker{display:none}.zg-det summary svg{stroke:currentColor;fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px;transition:transform .2s}.zg-det[open] summary svg{transform:rotate(180deg)}.zg-svc{border:1px solid var(--zg-border-soft);border-radius:10px;margin-top:8px;overflow:hidden}.zg-svc-row{border-bottom:1px solid var(--zg-border-soft);grid-template-columns:1.1fr 1.3fr .8fr;gap:10px;padding:10px 12px;font-size:12.5px;display:grid}.zg-svc-row:last-child{border-bottom:0}.zg-svc-row.zg-h{background:var(--zg-soft);text-transform:uppercase;letter-spacing:.08em;color:var(--zg-ter);font-size:11px;font-weight:600}.zg-svc-row b{color:var(--zg-title);font-weight:600;display:block}.zg-svc-row code{color:var(--zg-sec);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.zg-svc-row span{color:var(--zg-sec)}.zg-sh-f{border-top:1px solid var(--zg-border-soft);background:#fff;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:16px 26px 20px;display:grid}.zg-sh-f .zg-choice{font-size:13.5px}.zg-sh-f .zg-save{background:var(--zg-green);border-color:var(--zg-green)}.zg-sh-f .zg-save:hover{background:color-mix(in srgb, var(--zg-green) 86%, #000)}.zg-meta{color:var(--zg-ter);flex-wrap:wrap;justify-content:space-between;gap:10px;padding:0 26px 16px;font-size:11.5px;display:flex}.zg-fab{z-index:800;border:1px solid var(--zg-border);width:48px;height:48px;box-shadow:0 6px 18px color-mix(in srgb, var(--zg-navy) 16%, transparent);cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;bottom:20px;left:20px}.zg-fab svg{width:24px;height:24px}.zg-fab:hover{border-color:var(--zg-green)}.zg-toast{background:var(--zg-navy);color:#fff;opacity:0;pointer-events:none;z-index:1100;border-radius:10px;align-items:center;gap:9px;max-width:calc(100vw - 32px);padding:12px 18px;font-size:13.5px;transition:all .25s;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%,16px)}.zg-toast.zg-show{opacity:1;transform:translate(-50%)}.zg-toast svg{width:16px;height:16px;stroke:var(--zg-green-hi);fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}@media (max-width:760px){.zg-cb{border:0;border-top:1px solid var(--zg-border-soft);width:auto;max-width:none;padding-bottom:env(safe-area-inset-bottom);border-radius:20px 20px 0 0;bottom:0;left:0;right:0}.zg-cb:before{content:"";background:var(--zg-border);border-radius:2px;width:38px;height:4px;margin:10px auto 0;display:block}.zg-top{padding:14px 18px 0}.zg-ic{width:40px;height:40px}.zg-cb h2{font-size:16px}.zg-act{padding:16px 18px 0}.zg-choice{height:50px;font-size:14.5px}.zg-more{padding:10px 18px 14px}.zg-more small{display:none}.zg-ovl{align-items:flex-end;padding:0}.zg-sheet{border-radius:20px 20px 0 0;max-width:none;max-height:92vh}.zg-sh-h{padding:18px 18px 12px}.zg-sh-h h2{font-size:18px}.zg-sh-b{padding:4px 18px 14px}.zg-svc-row{grid-template-columns:1fr 1fr;row-gap:2px}.zg-svc-row.zg-h{display:none}.zg-svc-row .zg-life{color:var(--zg-ter);grid-column:1/-1}.zg-sh-f{padding:12px 18px calc(14px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr}.zg-sh-f .zg-save{order:-1;grid-column:1/-1}.zg-meta{padding:0 18px 12px}.zg-fab{bottom:14px;left:14px}.zg-panel .zg-fab{bottom:84px}}@media (prefers-reduced-motion:reduce){.zg *,.zg-cb,.zg-toast{transition:none!important}}
