.sh-shell{--bg:var(--sh-l-bg);--sf:var(--sh-l-sf);--ink:var(--sh-l-ink);--mu:var(--sh-l-mu);--ln:var(--sh-l-ln);--ac:var(--sh-l-ac);--on:var(--sh-l-on);--at:var(--sh-l-at);--err:var(--sh-l-err)}:root[data-theme=dark] .sh-shell{--bg:var(--sh-d-bg);--sf:var(--sh-d-sf);--ink:var(--sh-d-ink);--mu:var(--sh-d-mu);--ln:var(--sh-d-ln);--ac:var(--sh-d-ac);--on:var(--sh-d-on);--at:var(--sh-d-at);--err:var(--sh-d-err)}.app-tabs,.app-sheet,.app-scrim{display:none}@media (width<=1023.98px){:root{--app-tabs-h:64px;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{padding:0 env(safe-area-inset-right) calc(var(--app-tabs-h) + env(safe-area-inset-bottom)) env(safe-area-inset-left)}:root.app-locked{overflow:hidden}a,button{touch-action:manipulation}.app-tabs{z-index:950;height:calc(var(--app-tabs-h) + env(safe-area-inset-bottom));padding:6px max(6px, env(safe-area-inset-right)) env(safe-area-inset-bottom) max(6px, env(safe-area-inset-left));background:color-mix(in srgb, var(--bg) 86%, transparent);backdrop-filter:blur(18px)saturate(1.5);border-top:1px solid var(--ln);view-transition-name:app-tabs;display:flex;position:fixed;inset:auto 0 0}.app-tab{min-width:0;color:var(--mu);letter-spacing:.01em;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:0 2px;font:500 11px/1.15 Geist Variable,system-ui,sans-serif;text-decoration:none;transition:color .15s,transform .15s;display:flex}.app-tab:active{transform:scale(.92)}.app-tab:focus-visible{outline:2px solid var(--ac);outline-offset:-2px}.app-tab-ico{border-radius:999px;place-items:center;width:52px;height:30px;transition:background-color .2s;display:grid}.app-tab svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.app-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-tab[aria-current=page],.app-tab[aria-expanded=true]{color:var(--ink);font-weight:600}.app-tab[aria-current=page] .app-tab-ico,.app-tab[aria-expanded=true] .app-tab-ico{background:color-mix(in srgb, var(--ac) 24%, transparent);color:var(--at)}body:has(:is(input:not([type=checkbox],[type=radio]),textarea,select):focus) .app-tabs{display:none}.app-scrim:not([hidden]){z-index:1040;background:#0000006b;animation:.2s ease-out app-fade;display:block;position:fixed;inset:0}.app-sheet:not([hidden]){z-index:1050;overscroll-behavior:contain;max-height:82dvh;padding:8px max(18px, env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:var(--sf);color:var(--ink);border-top:1px solid var(--ln);border-radius:22px 22px 0 0;flex-direction:column;animation:.32s cubic-bezier(.2,.8,.2,1) app-up;display:flex;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -16px 48px -12px #00000059}.app-grip{background:var(--ln);border-radius:3px;align-self:center;width:38px;height:5px;margin:2px 0 10px}.app-row{border:0;border-bottom:1px solid var(--ln);width:100%;min-height:54px;color:inherit;text-align:start;cursor:pointer;background:0 0;align-items:center;padding:0 4px;font:500 16px Geist Variable,system-ui,sans-serif;text-decoration:none;display:flex}.app-row:active{background:color-mix(in srgb, var(--ink) 6%, transparent)}.app-close,.app-btn{border:1px solid var(--ln);border-radius:var(--rb,12px);min-height:48px;color:var(--ink);cursor:pointer;background:0 0;font:600 15px Geist Variable,system-ui,sans-serif}.app-close{margin-top:14px}.app-row:focus-visible,.app-close:focus-visible,.app-btn:focus-visible{outline:2px solid var(--ac);outline-offset:2px}.app-install{gap:14px;padding-top:18px}.app-install-body{align-items:flex-start;gap:14px;display:flex}.app-install-body img{border-radius:12px;flex:none;box-shadow:0 4px 14px -6px #0006}.app-install-h{font:600 17px/1.3 var(--fd,"Geist Variable"), system-ui, sans-serif;margin:0 0 4px}.app-install-p{color:var(--mu);margin:0 0 4px;font:400 14px/1.45 Geist Variable,system-ui,sans-serif}.app-install-p strong{color:var(--ink);font-weight:600}.app-install-actions{gap:8px;display:flex}.app-btn{flex:1 1 0}.app-btn-main{border-color:var(--ac);background:var(--ac);color:var(--on)}.ck-banner.ck-banner{bottom:calc(var(--app-tabs-h) + env(safe-area-inset-bottom) + 12px)}@keyframes app-up{0%{transform:translateY(100%)}}@keyframes app-fade{0%{opacity:0}}}@media (width<=1023.98px) and (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:.18s ease-in both app-out}::view-transition-new(root){animation:.24s cubic-bezier(.2,.8,.2,1) both app-in}@keyframes app-out{to{opacity:0}}@keyframes app-in{0%{opacity:0;transform:translateY(12px)}}}@media print{.app-tabs,.app-sheet,.app-scrim{display:none!important}}.ck-banner{z-index:1000;background:var(--sf,#faf8f4);max-width:520px;color:var(--ink,#121417);border:1px solid var(--ln,#e6e3dc);border-radius:var(--r,14px);flex-direction:column;gap:14px;margin-inline:auto;padding:20px;display:flex;position:fixed;inset:auto 16px 16px;box-shadow:0 12px 32px -16px #00000040}.ck-banner[hidden]{display:none}html{scroll-padding-bottom:var(--ck-cover,0px)}body:after{content:"";height:var(--ck-room,0px);display:block}@media (width>=1024px){.ck-banner{inset:auto 24px 24px auto}}.ck-text{margin:0;font:400 15px/1.55 Geist Variable,system-ui,sans-serif}.ck-actions{flex-wrap:wrap;gap:8px;display:flex}.ck-btn{border:1px solid var(--ink,#121417);border-radius:var(--rb,12px);min-height:44px;color:var(--ink,#121417);cursor:pointer;background:0 0;flex:140px;font:600 14px Geist Variable,system-ui,sans-serif}.ck-btn-all{background:var(--ink,#121417);color:var(--bg,#fff)}.ck-link{color:var(--ink,#121417);text-underline-offset:3px;align-self:flex-start;font:500 14px Geist Variable,system-ui,sans-serif;text-decoration:underline}.ck-btn:focus-visible,.ck-link:focus-visible{outline:2px solid var(--ac,#121417);outline-offset:2px}@media (width<=1023.98px){.dc-wide.dc-wide{display:none!important}}@media (width>=1024px){.dc-narrow.dc-narrow,.dc-menu.dc-menu{display:none!important}}.dc-menu.dc-menu:not(.is-open),html[data-theme=dark] [data-theme-label=light],html:not([data-theme=dark]) [data-theme-label=dark],[aria-expanded=true]>[data-menu-label=closed],[aria-expanded=false]>[data-menu-label=open]{display:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}body{overflow-wrap:break-word}h1,h2,h3{hyphens:auto}[id]{scroll-margin-top:88px}.p2m-fb{--p2m-fb-bg:#fff;--p2m-fb-ink:#16191d;--p2m-fb-muted:#5b636d;--p2m-fb-line:#cfd5dc;--p2m-fb-accent:#16191d;--p2m-fb-accent-ink:#fff;--p2m-fb-danger:#a8261b;--p2m-fb-focus:#2563eb;color:var(--p2m-fb-ink);font:14px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}html[data-theme=dark] .p2m-fb{--p2m-fb-bg:#15181c;--p2m-fb-ink:#eef1f4;--p2m-fb-muted:#a6aeb8;--p2m-fb-line:#3a4048;--p2m-fb-accent:#eef1f4;--p2m-fb-accent-ink:#15181c;--p2m-fb-danger:#ff8a7a;--p2m-fb-focus:#7aa7ff}html[data-brand=php2modern] .p2m-fb{--p2m-fb-accent:#d9b26f;--p2m-fb-accent-ink:#16191d}html[data-brand=php2python] .p2m-fb{--p2m-fb-accent:#2d5f8b;--p2m-fb-accent-ink:#fff}html[data-brand=php2next] .p2m-fb{--p2m-fb-accent:#c6f432;--p2m-fb-accent-ink:#16191d}html[data-brand=php2node] .p2m-fb{--p2m-fb-accent:#5be08f;--p2m-fb-accent-ink:#16191d}html[data-brand=wordpress2astro] .p2m-fb{--p2m-fb-accent:#e8603c;--p2m-fb-accent-ink:#16191d}html[data-brand=phpreplace] .p2m-fb{--p2m-fb-accent:#b23a2a;--p2m-fb-accent-ink:#fff}.p2m-fb [hidden]{display:none!important}.p2m-fb *,.p2m-fb :before,.p2m-fb :after{box-sizing:border-box}.p2m-fb :focus-visible{outline:2px solid var(--p2m-fb-focus);outline-offset:2px}.p2m-fb-trigger{z-index:900;writing-mode:vertical-rl;border:1px solid var(--p2m-fb-line);background:var(--p2m-fb-accent);min-width:32px;min-height:44px;color:var(--p2m-fb-accent-ink);letter-spacing:.02em;cursor:pointer;border-right:0;border-radius:0 8px 8px 0;padding:12px 7px;font-family:inherit;font-size:13px;font-weight:600;line-height:1;position:fixed;top:38vh;right:0;transform:rotate(180deg);box-shadow:0 2px 8px #0000002e}@media (width<=640px){.p2m-fb-trigger{top:auto;bottom:30vh}}@media print{.p2m-fb{display:none}}.p2m-fb-backdrop{z-index:1090;background:#00000073;position:fixed;inset:0}.p2m-fb-dialog{z-index:1100;background:var(--p2m-fb-bg);width:min(440px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--p2m-fb-ink);border:1px solid var(--p2m-fb-line);border-radius:12px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 16px 48px #0000004d}.p2m-fb-header{border-bottom:1px solid var(--p2m-fb-line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.p2m-fb-title{margin:0;font-size:16px;font-weight:650}.p2m-fb-close{min-width:44px;min-height:44px;color:var(--p2m-fb-muted);cursor:pointer;background:0 0;border:0;margin:-10px -12px -10px 0;font-size:22px}.p2m-fb-form{gap:14px;padding:16px 18px 18px;display:grid}.p2m-fb-intro,.p2m-fb-hint{color:var(--p2m-fb-muted);margin:0;font-size:13px}.p2m-fb-hint{margin-top:4px;font-size:12px}.p2m-fb-types{border:0;gap:8px;margin:0;padding:0;display:flex}.p2m-fb-types legend{margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.p2m-fb-type{border:1px solid var(--p2m-fb-line);cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.p2m-fb-field label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.p2m-fb textarea,.p2m-fb input[type=email],.p2m-fb select{border:1px solid var(--p2m-fb-line);background:var(--p2m-fb-bg);width:100%;min-height:44px;color:var(--p2m-fb-ink);font:inherit;border-radius:8px;padding:9px 11px}.p2m-fb textarea{resize:vertical;min-height:110px}.p2m-fb-meta{color:var(--p2m-fb-muted);justify-content:space-between;margin-top:6px;font-size:12px;display:flex}.p2m-fb-link{min-height:24px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.p2m-fb-trap{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.p2m-fb-error{color:var(--p2m-fb-danger);margin:0;font-size:13px}.p2m-fb-actions{justify-content:flex-end;gap:8px;display:flex}.p2m-fb-primary,.p2m-fb-secondary{cursor:pointer;border-radius:8px;min-height:44px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;line-height:1}.p2m-fb-primary{border:1px solid var(--p2m-fb-accent);background:var(--p2m-fb-accent);color:var(--p2m-fb-accent-ink)}.p2m-fb-primary:disabled{opacity:.6;cursor:progress}.p2m-fb-secondary{border:1px solid var(--p2m-fb-line);color:var(--p2m-fb-ink);background:0 0}.p2m-fb-toast{z-index:1200;background:var(--p2m-fb-ink);max-width:calc(100vw - 32px);color:var(--p2m-fb-bg);border-radius:8px;padding:10px 16px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.p2m-fb-toast[data-kind=error]{background:var(--p2m-fb-danger);color:#fff}@media (prefers-reduced-motion:no-preference){.p2m-fb-dialog{animation:.12s ease-out p2m-fb-in}@keyframes p2m-fb-in{0%{opacity:0}to{opacity:1}}}.p2m-staff[data-astro-cid-wmnov5y3]{justify-content:flex-end;gap:20px;max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,48px) 24px;font:500 12px Geist Mono Variable,ui-monospace,monospace;display:flex}.p2m-staff[data-astro-cid-wmnov5y3] a[data-astro-cid-wmnov5y3]{color:inherit;opacity:.6}.p2m-staff[data-astro-cid-wmnov5y3] a[data-astro-cid-wmnov5y3]:hover,.p2m-staff[data-astro-cid-wmnov5y3] a[data-astro-cid-wmnov5y3]:focus-visible{opacity:1}
