@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600&family=Outfit:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";
.error{color:#8b1a1a;font-size:.95rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
:root{--bg:#fafafa;--bg-elevated:#fff;--ink:#0a0a0a;--ink-2:#1f1f1f;--mute:#525252;--mute-soft:#6b6b6b;--line:#e0e0e0;--line-strong:#bdbdbd;--fill:#f0f0f0;--radius:0;--radius-control:0;--control-h:2.75rem;--control-px:1.25rem;--control-border:1.5px;--btn-font-size:.8125rem;--btn-tracking:.08em;--btn-page-min:10.5rem;--font-ui:"Outfit","Noto Sans SC",system-ui,sans-serif;--font-cn:"Noto Sans SC","Outfit",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--max:760px;--logo-optical-shift:calc(var(--logo-w,56px)*-19/56)}*,:before,:after{box-sizing:border-box}html{font-size:17px}body{min-height:100vh;font-family:var(--font-cn);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-weight:400;line-height:1.65}a{color:var(--ink);border-bottom:1px solid var(--line-strong);text-decoration:none}a:hover{border-bottom-color:var(--ink)}h1,h2,h3{font-family:var(--font-ui);letter-spacing:.01em;color:var(--ink);margin:0;font-weight:500;line-height:1.3}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:0 0 .65rem;font-size:.75rem;font-weight:500}.logo{color:inherit;border:none;align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.logo:hover{opacity:.85;border:none}.logo img{object-fit:contain;object-position:left center;margin-left:var(--logo-optical-shift);background:0 0;flex-shrink:0;display:block}.logo-full{--logo-w:72px;width:72px;height:72px}.logo-header-mark{--logo-w:36px;width:36px;height:36px}.logo-word{font-family:var(--font-ui);letter-spacing:.02em;text-transform:lowercase;color:var(--ink);white-space:nowrap;font-size:1.15rem;font-weight:500}.logo-auth{flex-direction:row;justify-content:flex-start;align-items:center;gap:.85rem;margin:0 0 1.75rem;padding:0;display:flex}.logo-auth .logo-full{--logo-w:56px;flex-shrink:0;width:56px;height:56px;display:block}.logo-auth .logo-word{letter-spacing:.03em;font-size:1.35rem;line-height:1.1}.auth-shell{background:radial-gradient(100% 70% at 50% -20%,#fff 0%,transparent 60%),linear-gradient(#f7f7f7 0%,#fafafa 45%,#f0f0f0 100%);flex-direction:column;min-height:100vh;display:flex;position:relative}.auth-main{flex:1;justify-content:center;align-items:flex-start;width:100%;padding:max(4.5rem,min(14vh,7.5rem)) 1.5rem 2rem;display:flex}.auth-card{text-align:left;width:100%;max-width:26rem;margin:0 auto;animation:.7s both home-rise}.auth-card h1{margin-bottom:.55rem;font-size:1.65rem}.auth-card .lead{color:var(--mute);margin:0 0 1.75rem;font-size:1rem;font-weight:400}.auth-card .rule{background:var(--line);border:none;height:1px;margin:0 0 1.75rem}.auth-card code{font-family:var(--font-mono);font-size:.9em}.auth-card-login{--auth-notice-gap:2rem}.auth-card-login>.logo-auth{margin-bottom:0}.auth-login-panel{margin-top:var(--auth-notice-gap)}.auth-status{margin:0 0 var(--auth-notice-gap);box-sizing:border-box;background:var(--fill);border:1px solid var(--line);width:100%;font-family:var(--font-cn);letter-spacing:.015em;color:var(--mute);border-radius:0;padding:.9rem 1rem;font-size:.8125rem;font-weight:400;line-height:1.7}.auth-status .contact-admin{margin:0 .15em}.auth-status .contact-admin-trigger{font-size:inherit;letter-spacing:inherit;color:var(--ink);border-bottom-width:1px;border-bottom-color:var(--line-strong);font-weight:500}.auth-status-key{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-2);background:0 0;padding:0;font-size:.92em;font-weight:500}.auth-work{margin-top:0}.auth-work h1{letter-spacing:-.015em;color:var(--ink);margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;line-height:1.2}.auth-card-login .form-actions .btn{min-width:5.5rem;height:2.125rem;padding:0 1rem}.auth-card-login .back-link{margin-top:1.75rem}.contact-admin{display:inline;position:relative}.contact-admin-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-bottom:1px solid var(--line-strong);font:inherit;color:var(--ink);cursor:pointer;line-height:inherit;background:0 0;margin:0;padding:0}.contact-admin-trigger:hover{border-bottom-color:var(--ink);outline:none}.contact-admin-trigger:focus-visible{border-bottom-color:var(--ink);outline:none}.contact-admin-trigger:focus-visible{box-shadow:0 0 0 2px var(--bg-elevated),0 0 0 3px var(--ink)}.contact-admin-pop{z-index:30;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;align-items:center;gap:.55rem;width:max-content;max-width:min(220px,70vw);padding:.75rem;transition:opacity .16s,transform .16s,visibility .16s;display:flex;position:absolute;bottom:calc(100% + .55rem);left:50%;transform:translate(-50%)translateY(4px)}.contact-admin-pop:after{content:"";height:.65rem;position:absolute;top:100%;left:0;right:0}.contact-admin:hover .contact-admin-pop,.contact-admin:focus-within .contact-admin-pop{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.contact-admin-pop img{object-fit:contain;width:180px;max-width:100%;height:180px;display:block}.contact-admin-caption{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-size:.7rem;font-weight:500}@media (prefers-reduced-motion:reduce){.contact-admin-pop{transition:none}}.app-shell{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.app-header{border-bottom:1px solid var(--line);background:var(--bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;gap:1.5rem;padding:.95rem 1.75rem;display:flex}.header-end{flex-shrink:0;align-items:center;gap:1.25rem;margin-left:auto;display:flex}.locale-switch{font-family:var(--font-ui);letter-spacing:.16em;align-items:baseline;gap:.95rem;font-size:.78rem;font-weight:500;line-height:1.2;display:inline-flex}.locale-switch button{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--mute-soft);cursor:pointer;background:0 0;border:none;border-bottom:1px solid transparent;border-radius:0;margin:0;padding:.2rem 0 .15rem;transition:color .15s,border-color .15s}.locale-switch button.is-active{color:var(--ink);border-bottom-color:var(--ink)}.locale-switch button:hover{color:var(--ink)}.locale-switch button:focus-visible{outline:1px solid var(--ink);outline-offset:3px}@media (prefers-reduced-motion:reduce){.locale-switch button{transition:none}}.shell-locale{z-index:5;position:absolute;top:1rem;right:1.75rem}.app-header .logo-word{letter-spacing:.025em;font-size:1.2rem}.hello{font-family:var(--font-ui);color:var(--ink);letter-spacing:.01em;white-space:nowrap;margin:0;font-size:1rem;font-weight:500}.hello-name{font-weight:600}.app-body{flex:1;grid-template-columns:200px 1fr;min-height:0;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--bg-elevated);flex-direction:column;padding:1.5rem 0;display:flex}.nav{flex-direction:column;gap:.1rem;display:flex}.nav a{color:var(--mute);border:none;padding:.7rem 1.35rem;font-size:1rem;font-weight:400;transition:color .15s}.nav a:hover{color:var(--ink)}.nav a.active{color:var(--ink);box-shadow:inset 2px 0 0 var(--ink);font-weight:500}.main{flex-direction:column;min-width:0;display:flex}.content{max-width:calc(var(--max) + 4rem);padding:2.25rem 2rem 4rem}.page-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:2.25rem;padding-bottom:1.5rem;display:flex}.page-head h1{margin-bottom:.45rem;font-size:1.75rem}.page-head p{color:var(--mute);max-width:32rem;margin:0;font-size:1rem;font-weight:400;line-height:1.55}.form{flex-direction:column;gap:1.4rem;display:flex}label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);flex-direction:column;gap:.55rem;font-size:.75rem;font-weight:500;display:flex}input:not([type]),input[type=email],input[type=password],input[type=text],input[type=search],input[type=url]{font-family:var(--font-cn);border:none;border-bottom:1.5px solid var(--line-strong);color:var(--ink);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border-radius:0;outline:none;padding:.8rem 0;font-size:1.05rem;font-weight:400}input::placeholder{color:#9a9a9a}input:focus{border-bottom-color:var(--ink)}.password-field{width:100%;display:block;position:relative}.password-field input{box-sizing:border-box;width:100%;padding-right:2.5rem}.password-toggle{width:2rem;height:2rem;color:var(--mute);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;bottom:.55rem;right:0}.password-toggle:hover,.password-toggle[aria-pressed=true]{color:var(--ink)}.password-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.password-toggle svg{width:1.15rem;height:1.15rem;display:block}.field{flex-direction:column;gap:.45rem;display:flex}.field-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-size:.75rem;font-weight:500}.field-note{font-family:var(--font-cn);letter-spacing:0;text-transform:none;color:var(--mute-soft);margin:0;font-size:.9rem;font-weight:400;line-height:1.4}.dialog-backdrop{z-index:80;background:rgba(10,10,10,.28);justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.dialog{background:var(--bg-elevated);border:1px solid var(--line);width:100%;max-width:22rem;padding:1.5rem 1.5rem 1.35rem}.dialog-title{font-family:var(--font-ui);margin:0 0 .65rem;font-size:1.15rem;font-weight:500}.dialog-body{color:var(--mute);margin:0 0 1.5rem;font-size:.95rem;line-height:1.55}.dialog-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.btn{font-family:var(--font-ui);font-weight:500;font-size:var(--btn-font-size);letter-spacing:var(--btn-tracking);text-transform:none;white-space:nowrap;height:var(--control-h);padding:0 var(--control-px);box-sizing:border-box;border:var(--control-border)solid var(--ink);border-radius:var(--radius-control);background:var(--ink);color:#fff;cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;line-height:1;text-decoration:none;display:inline-flex}a.btn{border-bottom:var(--control-border)solid var(--ink)}.btn:hover{background:var(--ink-2);border-color:var(--ink-2);color:#fff}.btn-page{min-width:var(--btn-page-min)}.page-head>.btn,.page-head>.btn-page{align-self:flex-end}.btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.btn-text:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.nav a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}input:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.btn-ghost{color:var(--ink);border-color:var(--line-strong);height:var(--control-h);padding:0 var(--control-px);background:0 0}a.btn-ghost{border-bottom-color:var(--line-strong)}.btn-ghost:hover{border-color:var(--ink);color:var(--ink);background:0 0}a.btn-ghost:hover{border-bottom-color:var(--ink)}.btn-text{color:var(--mute);letter-spacing:.04em;text-transform:none;cursor:pointer;font-size:.95rem;font-weight:500;font-family:var(--font-cn);background:0 0;border:none;border-bottom:1px solid transparent;padding:.35rem 0}.btn-text:hover{color:var(--ink);border-bottom-color:var(--ink);background:0 0}.btn-danger-text{color:var(--mute)}.btn-danger-text:hover{color:var(--ink)}.btn-row{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.hint{color:var(--mute);margin:0;font-size:.95rem;font-weight:400;line-height:1.55}.form-actions{border-top:1px solid var(--line);margin-top:.35rem;padding-top:1.5rem}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);border-bottom:1.5px solid var(--line-strong);padding:0 .5rem .9rem 0;font-size:.75rem;font-weight:500}td{border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink);padding:1.15rem .5rem 1.15rem 0;font-size:1rem;font-weight:400}.mono{font-family:var(--font-mono);letter-spacing:.02em;color:var(--ink-2);font-size:.9rem;font-weight:400}.status{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);font-size:.75rem;font-weight:500}.status.is-on{color:var(--ink)}.row-actions{flex-wrap:wrap;gap:1.15rem;display:flex}.code-block{border:1.5px solid var(--line-strong);background:#f4f4f4;max-width:min(100%,44rem);position:relative}.code-block pre{margin:0;padding:1.15rem 3rem 1.15rem 1rem;overflow-x:auto}.code-block code{font-family:var(--font-mono);color:var(--ink);white-space:nowrap;word-break:normal;overflow-wrap:normal;font-size:.95rem;font-weight:400;line-height:1.65}.code-block .btn-copy{width:2rem;height:2rem;color:var(--mute);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:.55rem;right:.55rem}.code-block .btn-copy:hover{color:var(--ink)}.code-block .btn-copy:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.code-block .btn-copy svg{width:1.15rem;height:1.15rem;display:block}.code-block .btn-copy.is-copied{color:var(--ink)}.code-block .btn-copy .icon-check,.code-block .btn-copy.is-copied .icon-copy{display:none}.code-block .btn-copy.is-copied .icon-check{display:block}.key-panel .warn{color:var(--mute);margin:1rem 0 0;font-size:.95rem;font-weight:400}.key-meta{flex-direction:column;gap:.35rem;margin:0 0 1.25rem;display:flex}.key-meta-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-size:.75rem;font-weight:500}.key-meta-value{font-family:var(--font-cn);color:var(--ink);font-size:1.15rem;font-weight:500;line-height:1.3}.notice{border-bottom:1px solid var(--line);margin-bottom:1.5rem;padding:1.25rem 0}.notice p{color:var(--ink-2);margin:0;font-size:1rem;font-weight:400;line-height:1.6}.notice strong{color:var(--ink);font-weight:600}.site-footer{text-align:right;width:100%;font-family:var(--font-ui);letter-spacing:.02em;color:var(--mute);background:0 0;flex-shrink:0;padding:1rem 1.75rem 1.25rem;font-size:.78rem;font-weight:400}.site-footer p{margin:0}.app-shell>.site-footer{border-top:1px solid var(--line);background:var(--bg-elevated)}.guide-shell>.site-footer,.gallery>.site-footer{border-top:1px solid var(--line)}.home-shell{background:radial-gradient(100% 70% at 50% -20%,#fff 0%,transparent 60%),linear-gradient(#f7f7f7 0%,#fafafa 45%,#f0f0f0 100%);flex-direction:column;min-height:100vh;display:flex;position:relative}.home-main{flex:1;justify-content:center;align-items:flex-start;width:100%;padding:max(4.5rem,min(14vh,7.5rem)) 1.5rem 2rem;display:flex}.home-card{text-align:left;width:100%;max-width:26rem;margin:0 auto;animation:.7s both home-rise}@keyframes home-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.home-card .logo-home{justify-content:flex-start;align-items:center;gap:.85rem;margin:0 0 1.75rem;padding:0;display:flex}.home-card .logo-home .logo-full{--logo-w:56px;flex-shrink:0;width:56px;height:56px;display:block}.home-card .logo-home .logo-word{letter-spacing:.03em;font-size:1.35rem;line-height:1.1}.home-card .tagline{color:var(--mute);max-width:none;margin:0 0 2.25rem;padding:0;font-size:1.05rem;line-height:1.65}.home-actions{border-top:1px solid var(--line);grid-template-columns:max-content;justify-items:stretch;gap:1rem;max-width:100%;padding-top:1.75rem;display:grid}.home-link{font-family:var(--font-ui);color:var(--ink);border-bottom:1.5px solid var(--line-strong);padding-bottom:.15rem;font-size:1.05rem;font-weight:500;transition:border-color .2s}.home-link:hover{border-bottom-color:var(--ink)}.home-actions .btn{letter-spacing:.06em;flex-shrink:1;width:auto;min-width:0;height:2.125rem;padding:0 .85rem}.guide-shell{background:var(--bg);flex-direction:column;min-height:100vh;display:flex}.guide-header{border-bottom:1px solid var(--line);background:var(--bg-elevated);justify-content:space-between;align-items:center;padding:1rem 1.75rem;display:flex}.guide-body{flex:1;width:100%;max-width:42rem;margin:0 auto;padding:2.75rem 1.5rem 2.5rem}.guide-body h1{margin-bottom:.75rem;font-size:1.85rem}.guide-body .lead{color:var(--mute);margin:0 0 1.5rem}.guide-toc{border-bottom:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.04em;flex-wrap:wrap;gap:.75rem 1.25rem;margin:0 0 .5rem;padding-bottom:1.25rem;font-size:.75rem;display:flex}.guide-toc a{border-bottom-color:var(--line);color:var(--mute)}.guide-toc a:hover{color:var(--ink);border-bottom-color:var(--ink)}.guide-section{margin:0;padding:0}.guide-body h2{border-top:1px solid var(--line);margin:2rem 0 .75rem;padding-top:1.25rem;font-size:1.15rem}.guide-section:first-of-type h2{border-top:none;padding-top:.5rem}.guide-brief{color:var(--ink-2);margin:0 0 1.25rem}.guide-sub{font-family:var(--font-ui);margin:1.75rem 0 .85rem;font-size:.95rem;font-weight:500}.guide-flow{border:1px solid var(--line);border-left:3px solid var(--ink);background:linear-gradient(#f7f7f7 0%,#fafafa 42%,#fff 100%);margin:0 0 1.25rem;padding:0;overflow:hidden}.guide-flow-lanes{grid-template-columns:1fr 1fr;gap:0;display:grid;position:relative}.guide-flow-lane{text-align:center;padding:1.15rem 1.1rem 1.35rem;position:relative}.guide-flow-lane+.guide-flow-lane{border-left:1px solid var(--line)}.guide-flow-clients{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0 0 .65rem;font-size:.68rem;font-weight:500}.guide-flow-proto{border:1.5px solid var(--ink);min-width:4.5rem;font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink);background:var(--bg-elevated);margin:0 auto;padding:.45rem .85rem;font-size:.8rem;font-weight:500;display:inline-block}.guide-flow-lane:after{content:"";background:var(--ink);width:1px;height:.85rem;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.guide-flow-merge{border-top:1px solid var(--line);justify-content:center;padding:1.1rem 1rem .35rem;display:flex;position:relative}.guide-flow-merge:before{content:"";background:var(--ink);height:1px;position:absolute;top:0;left:25%;right:25%}.guide-flow-merge:after{content:"";background:var(--ink);width:1px;height:1.1rem;position:absolute;top:0;left:50%;transform:translate(-50%)}.guide-flow-auth{z-index:1;font-family:var(--font-mono);letter-spacing:.06em;background:var(--ink);color:#fafafa;margin-top:.85rem;padding:.35rem .75rem;font-size:.72rem;font-weight:500;position:relative}.guide-flow-hub{border:1.5px solid var(--ink);background:var(--bg-elevated);text-align:center;margin:.85rem 1.1rem 0;padding:1rem 1.1rem 1.05rem}.guide-flow-hub-name{font-family:var(--font-ui);letter-spacing:-.02em;color:var(--ink);margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.guide-flow-hub-ops{font-family:var(--font-mono);letter-spacing:.08em;color:var(--mute);margin:0;font-size:.7rem}.guide-flow-store{text-align:center;margin:0;padding:1rem 1.1rem 1.2rem;position:relative}.guide-flow-store:before{content:"";background:var(--ink);width:1px;height:.85rem;margin:0 auto .75rem;display:block}.guide-flow-store-name{font-family:var(--font-cn);color:var(--ink);margin:0 0 .25rem;font-size:.95rem;font-weight:500}.guide-flow-store-meta{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin:0;font-size:.68rem}@media (prefers-reduced-motion:no-preference){.guide-flow-lane,.guide-flow-auth,.guide-flow-hub,.guide-flow-store{animation:.55s both guide-flow-rise}.guide-flow-lane:nth-child(2){animation-delay:60ms}.guide-flow-auth{animation-delay:.12s}.guide-flow-hub{animation-delay:.18s}.guide-flow-store{animation-delay:.24s}}@keyframes guide-flow-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.guide-arch{margin:0}.guide-arch-diagram{border:1px solid var(--line);border-left:3px solid var(--ink);font-family:var(--font-mono);white-space:pre;color:var(--ink);background:#f4f4f4;margin:0;padding:1.25rem 1.15rem;font-size:.72rem;line-height:1.55;overflow-x:auto}.arch-muted{color:var(--mute)}.arch-accent{color:var(--ink);font-weight:500}.arch-box{font-weight:500}.guide-modes{border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;display:grid}.guide-mode{color:var(--ink-2);padding:1rem 1.1rem 1.15rem;font-size:.92rem}.guide-mode+.guide-mode{border-left:1px solid var(--line)}.guide-mode-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0 0 .2rem;font-size:.75rem;font-weight:500}.guide-mode-who{color:var(--mute);margin:0 0 .65rem;font-size:.8rem}.guide-mode p:last-child{margin:0}.guide-note{color:var(--mute);margin:.85rem 0 0;font-size:.88rem}.guide-list{color:var(--ink-2);margin:0;padding-left:1.25rem}.guide-list li{margin:.4rem 0}.guide-list strong{color:var(--ink);font-weight:500}.guide-steps{margin:1.5rem 0 0;padding:0;list-style:none}.guide-body ol.guide-steps{padding-left:0;list-style:none}.guide-body ol.guide-steps>.guide-step{margin-left:0;margin-right:0}.guide-step{border-top:1px solid var(--line);flex-direction:column;margin:0;padding:1.75rem 0 0;display:flex}.guide-step:first-child{border-top:none;padding-top:.5rem}.guide-step-head{grid-template-columns:2.5rem 1fr;align-items:start;gap:.75rem 1.25rem;display:grid}.guide-step-index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--mute);margin:.15rem 0 0;font-size:.75rem;font-weight:500}.guide-step-copy{min-width:0}.guide-step-title{font-family:var(--font-cn);letter-spacing:-.01em;color:var(--ink);margin:0 0 .4rem;font-size:1.05rem;font-weight:500}.guide-step-copy>p{color:var(--mute);margin:0;font-size:.95rem;line-height:1.55}.guide-figure{box-sizing:border-box;border:1px solid var(--line);background:var(--paper,#fff);width:100%;max-width:none;margin:1rem 0 0;padding:0}.guide-figure-img{max-width:100%;display:block;width:100%!important;height:auto!important}.guide-figure figcaption{border-top:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.04em;color:var(--mute);margin:0;padding:.55rem .75rem;font-size:.7rem;line-height:1.4}.guide-code-label{color:var(--mute);margin:1.75rem 0 .5rem;font-size:.9rem}.guide-code{border:1px solid var(--line);font-family:var(--font-mono);color:var(--ink);background:0 0;margin:0;padding:1rem 1.1rem;font-size:.78rem;line-height:1.55;overflow-x:auto}.guide-code code{white-space:pre;font-family:inherit}.guide-roles .guide-mode ul{margin:0;padding-left:1.1rem;font-size:.88rem}.guide-roles .guide-mode li{margin:.35rem 0}.guide-body ol,.guide-body ul{color:var(--ink-2);margin:0;padding-left:1.25rem}.guide-body li{margin:.45rem 0}.guide-body pre:not(.guide-arch-diagram):not(.guide-code){border:1px solid var(--line);font-family:var(--font-mono);background:#f4f4f4;margin:.75rem 0 0;padding:1rem;font-size:.85rem;line-height:1.55;overflow-x:auto}@media (max-width:640px){.guide-modes{grid-template-columns:1fr}.guide-mode+.guide-mode{border-left:none;border-top:1px solid var(--line)}.guide-arch-diagram{font-size:.65rem}.guide-flow-lanes{grid-template-columns:1fr}.guide-flow-lane+.guide-flow-lane{border-left:none;border-top:1px solid var(--line)}.guide-flow-merge:before{width:0;left:50%;right:auto}.guide-step-head{grid-template-columns:2rem 1fr;gap:.5rem .85rem}}.gallery{box-sizing:border-box;flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;padding:3.5rem 1.5rem 1.25rem;display:flex}.gallery>.site-footer{margin-top:auto;padding-left:0;padding-right:0}.gallery .logo{gap:.85rem;margin-bottom:2.5rem}.gallery .logo-full{--logo-w:56px;width:56px;height:56px}.gallery .logo-word{font-size:1.15rem}.gallery h1{margin-bottom:.65rem;font-size:1.75rem}.gallery .lead{color:var(--mute);margin:0 0 2.25rem;font-size:1rem;font-weight:400;line-height:1.55}.gallery ol{margin:0;padding:0;list-style:none}.gallery li{border-top:1px solid var(--line)}.gallery li:last-child{border-bottom:1px solid var(--line)}.gallery li a{color:var(--ink);border:none;padding:1.15rem 0;font-size:1.05rem;font-weight:400;display:block}.gallery li a:hover{opacity:.7}.gallery li a small{color:var(--mute);margin-top:.3rem;font-size:.9rem;display:block}.back-link{color:var(--mute);border-bottom-color:var(--line-strong);margin-top:2.5rem;font-size:.95rem;display:inline-block}.back-link:hover{color:var(--ink);border-bottom-color:var(--ink)}@media (max-width:720px){html{font-size:16px}.app-header{padding:.85rem 1.15rem}.app-header .logo-word{font-size:1rem}.app-body{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--line);flex-flow:wrap;align-items:center;gap:.35rem;padding:.65rem 1rem}.nav{flex-direction:row;gap:.25rem}.nav a{padding:.45rem .65rem}.nav a.active{box-shadow:inset 0 -2px 0 var(--ink)}.content{padding:1.75rem 1.25rem 3rem}.home-card .logo-home .logo-word,.logo-auth .logo-word{font-size:1.1rem}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
