/* V5 utilities only. V4 typography, palettes and layout rules remain unchanged. */
.z5-dock{position:fixed;left:20px;bottom:20px;z-index:80;display:flex;gap:8px;align-items:center}.z5-dock[hidden]{display:none}.z5-dock button{min-width:46px;min-height:46px;display:flex;gap:10px;align-items:center;justify-content:center;border:1px solid #7d897e;background:#13271f;color:#fbfff9;border-radius:24px;padding:11px 16px;box-shadow:0 4px 22px #0002;font:500 13px/1.2 Arial,sans-serif;cursor:pointer}.z5-dock button+button{background:#101820;border-color:#81878b}.z5-dock svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}.z5-dock button:hover{transform:translateY(-2px)}.z5-dock button:focus-visible,.z5-dialog :focus-visible,.z5-workbench :focus-visible,.z5-certificate :focus-visible{outline:3px solid #4b8cec;outline-offset:4px}
.z5-dialog{--z5-ink:#18221e;width:min(700px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:0;border:1px solid #d8d8cd;background:#f3f2e9;color:var(--z5-ink);border-radius:16px;box-shadow:0 30px 100px #0005;margin:auto;font:16px/1.6 Arial,sans-serif}.z5-dialog::backdrop{background:#030d18b3;backdrop-filter:blur(5px)}.z5-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 26px;border-bottom:1px solid #273e2729;background:#f3f2e9}.z5-dialog-head button{width:44px;height:44px;border:1px solid #a4aa9f;background:none;color:inherit;border-radius:50%;font-size:26px;cursor:pointer}.z5-dialog-body{padding:25px 30px 28px}.z5-dialog h2,.z5-workbench h2{font-family:Arial,sans-serif;font-weight:500;letter-spacing:-.045em;font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.07;margin:12px 0 20px}.z5-dialog h2 em,.z5-workbench h2 em{font-family:Georgia,serif;font-weight:400}.z5-kicker{font:11px/1.6 ui-monospace,monospace;letter-spacing:.12em}.z5-person{display:flex;gap:23px;align-items:center;margin-bottom:20px}.z5-person img{flex:none;width:96px;height:96px;border-radius:50%;object-fit:cover;object-position:50% 28%;border:1px solid #909c8c}.z5-person h2{font-size:clamp(1.55rem,3vw,2.15rem);margin-top:0;margin-bottom:10px}.z5-person p{font-size:12px;margin:0}.z5-chips,.z5-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 12px}.z5-chips button{padding:10px 15px;border:1px solid #9dafa0;border-radius:25px;background:transparent;color:inherit;font:13px Arial,sans-serif;cursor:pointer;min-height:44px}.z5-field{display:block;font-size:13px;margin-top:22px}.z5-field textarea{display:block;margin-top:8px;width:100%;padding:14px;font:16px/1.5 Arial,sans-serif;border:1px solid #a2aba0;border-radius:6px;background:#fffcf6;color:#1a231c;resize:vertical}.z5-dialog .btn{background:transparent;color:#18221e;border:1px solid #a2aba0;font:14px Arial,sans-serif;padding:16px 19px;border-radius:28px;min-height:48px;text-decoration:none}.z5-dialog .btn.primary{color:white;background:#203a2e;border-color:#203a2e}.z5-note,.z5-status{font-size:13px;line-height:1.65}.z5-note{opacity:.8}.z5-status:empty{display:none}.z5-shortcut-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #293d3433;margin:25px 0}.z5-shortcut-grid>a,.z5-shortcut-grid>button{padding:18px 12px;display:flex;flex-direction:column;gap:5px;align-items:start;text-align:left;border:0;border-bottom:1px solid #293d3433;background:none;color:inherit;text-decoration:none;font:16px/1.4 Arial,sans-serif;cursor:pointer;min-width:0}.z5-shortcut-grid b{font-weight:500}.z5-shortcut-grid span{font-size:12px;color:#546356}.z5-shortcut-grid>a:hover,.z5-shortcut-grid>button:hover{background:#e3e8dc}
.z5-workbench{color:inherit;margin:42px 0;padding:36px;border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 22%,transparent);border-radius:6px}.z5-workbench-head{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:end;padding-bottom:30px}.z5-workbench-head>p{max-width:40ch;font-size:16px;line-height:1.65}.z5-model-grid,.z5-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.z5-model-note,.z5-resource{padding:26px 0;border-top:1px solid currentColor;border-color:color-mix(in srgb,currentColor 25%,transparent)}.z5-model-note h3{font-size:30px;font-weight:400;letter-spacing:-.04em;margin:20px 0}.z5-model-note>strong{font-size:26px;font-weight:400;display:block}.z5-model-note small{font:12px ui-monospace,monospace;white-space:nowrap}.z5-model-note p{font-size:15px;line-height:1.6}.z5-model-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start;margin-top:22px}.z5-model-actions a{font-size:14px}.z5-model-actions button{font:13px/1.4 Arial,sans-serif;min-height:44px;border:1px solid currentColor;border-radius:23px;padding:11px 15px;color:inherit;background:transparent;cursor:pointer}.z5-model-actions button[aria-pressed=true]{background:#233c30;color:#fff}.z5-comparison{margin-top:20px;border-top:1px solid currentColor;padding-top:20px}.z5-comparison summary{cursor:pointer;min-height:44px;font-size:18px}.z5-table-scroll{overflow:auto;max-width:100%}.z5-comparison table{border-collapse:collapse;text-align:left;width:100%;min-width:580px;font-size:14px}.z5-comparison th,.z5-comparison td{padding:17px 14px;border-bottom:1px solid currentColor;border-color:color-mix(in srgb,currentColor 20%,transparent);vertical-align:top}.z5-comparison caption{text-align:left;padding:10px 0 20px;font-size:13px;max-width:60ch}.z5-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.z5-check-item{display:flex;align-items:start;gap:16px;padding:24px 0;border-top:1px solid currentColor;border-color:color-mix(in srgb,currentColor 20%,transparent);cursor:pointer}.z5-check-item input,.z5-remember input{width:23px;height:23px;flex:none;margin:2px 0;accent-color:#315844}.z5-check-item>span{display:flex;flex-direction:column;gap:8px}.z5-check-item strong{font:500 18px Arial,sans-serif}.z5-check-item span span{font-size:14px;line-height:1.65}.z5-check-item:has(input:checked) strong{text-decoration:line-through;opacity:.75}.z5-score{font:400 48px/1.2 ui-monospace,monospace}.z5-workbench progress{width:100%;height:5px;accent-color:#456e43;display:block;margin-top:20px}.z5-remember{display:flex;align-items:center;gap:12px;font-size:14px;margin-top:20px;cursor:pointer}.z5-resource{display:block;text-decoration:none;color:inherit}.z5-resource h3{font:400 27px/1.15 Georgia,serif;margin:22px 0 12px}.z5-resource p{font-size:15px;line-height:1.6}.z5-resource>span:last-child{display:block;margin-top:26px;font:13px ui-monospace,monospace}.z5-resource:hover>span:last-child{text-decoration:underline}.z5-certificate-grid{display:flex;flex-direction:column;gap:32px}.z5-certificate{display:grid;grid-template-columns:260px minmax(0,1fr);gap:44px;align-items:start;padding:32px 0;border-top:1px solid currentColor;border-color:color-mix(in srgb,currentColor 25%,transparent)}.z5-document-mark{aspect-ratio:1.1;display:flex;flex-direction:column;padding:24px;background:#172820;color:#ded6bc;gap:25px;border-radius:4px}.z5-document-mark span{font:11px ui-monospace,monospace;letter-spacing:.1em}.z5-document-mark svg{width:90px;height:110px;fill:none;stroke:currentColor;stroke-width:1}.z5-certificate h2{font:400 clamp(1.6rem,3vw,2.8rem)/1.1 Georgia,serif;letter-spacing:-.04em}.z5-certificate p{font-size:15px;line-height:1.75}.z5-certificate summary{min-height:44px;cursor:pointer;text-decoration:underline;font-size:14px}.z5-workbench button[hidden],.z5-shortcut-grid button[hidden]{display:none}.z5-workbench button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:719px){.z5-dock{left:12px;bottom:12px;gap:6px}.z5-dock button{width:46px;height:46px;padding:11px}.z5-dock button span{display:none}.z5-dialog-body{padding:22px 20px}.z5-dialog-head{padding:10px 20px}.z5-person{gap:15px}.z5-person img{width:66px;height:66px}.z5-shortcut-grid>a,.z5-shortcut-grid>button{font-size:14px;padding:16px 8px}.z5-shortcut-grid span{font-size:11px}.z5-workbench{padding:22px 18px;margin:28px 0}.z5-workbench-head{grid-template-columns:1fr;gap:12px}.z5-model-grid,.z5-resource-grid,.z5-check-grid{grid-template-columns:1fr;gap:12px}.z5-score{font-size:36px}.z5-certificate{grid-template-columns:1fr;gap:20px}.z5-document-mark{max-width:200px}.z5-dialog-actions .btn{font-size:13px}}
@media(prefers-reduced-motion:reduce){.z5-dock button:hover{transform:none}.z5-dialog::backdrop{backdrop-filter:none}}
@media print{.z5-dock,.z5-dialog{display:none!important}.z5-workbench,.z5-certificate{break-inside:avoid}}

.z5-hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center;min-height:540px;padding:50px 0 75px}.z5-hero-grid h1{font:500 clamp(2.7rem,5.2vw,5.4rem)/1.05 Arial,sans-serif;letter-spacing:-.055em;max-width:12ch}.z5-hero-notebook{background:#20352c;color:#efebd5;min-height:380px;display:flex;flex-direction:column;justify-content:space-between;padding:40px;transform:rotate(-5deg);box-shadow:18px 18px 0 #e1e0d3,20px 20px 0 #a4ac9f}.z5-hero-notebook>span,.z5-hero-notebook i{font:10px/1.6 ui-monospace,monospace;letter-spacing:.1em}.z5-hero-notebook strong{font:400 clamp(35px,4vw,64px)/1.02 Arial,sans-serif;letter-spacing:-.04em}.z5-hero-notebook em{font-family:Georgia,serif}.z5-hero-person{justify-self:center;text-align:center}.z5-hero-person img{width:260px;height:260px;object-fit:cover;object-position:50% 28%;border-radius:50%;display:block;margin-bottom:26px}.z5-hero-person span{font:11px/1.9 ui-monospace,monospace;letter-spacing:.15em}.z5-page-opening{overflow:hidden}@media(max-width:719px){.z5-hero-grid{grid-template-columns:1fr;gap:40px;padding:30px 0 60px}.z5-hero-notebook{min-height:250px;margin:0 25px 10px 5px;padding:26px}.z5-hero-person img{width:180px;height:180px}.z5-hero-grid h1{font-size:clamp(2.7rem,10vw,4rem)}}

.z5-workbench,.z5-certificate-grid{scroll-margin-top:130px}@media(max-width:719px){.z5-dock{bottom:max(12px,env(safe-area-inset-bottom))}}
