.pm-overlay{position:fixed;inset:0;z-index:10000;background:#000c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:1rem}.pm-modal{width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;border-radius:16px;border:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.15);background:#041018f5;overflow:hidden;box-shadow:0 24px 64px #00000080,0 0 20px hsla(var(--hue),var(--saturation),var(--lightness),.06);transition:max-width .3s ease}@media(min-width:768px){.pm-modal.has-architecture{max-width:960px}}.pm-header{display:flex;align-items:center;gap:.6rem;padding:.8rem 1.2rem;background:hsla(var(--hue),var(--saturation),var(--lightness),.04);border-bottom:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.1)}.pm-dots{display:flex;gap:5px}.pm-dot{width:10px;height:10px;border-radius:50%}.pm-dot--red{background:#ff5f57}.pm-dot--yellow{background:#febc2e}.pm-dot--green{background:#28c840}.pm-title-text{flex:1;font-family:JetBrains Mono,monospace;font-size:.7rem;color:#ffffff80;letter-spacing:.08em}.pm-close{background:none;border:none;color:#ffffff80;cursor:pointer;padding:4px;border-radius:6px;transition:all .2s}.pm-close:hover{color:#fff;background:#ffffff1a}.pm-boot{display:none;flex-direction:column;gap:2px;padding:1.2rem;font-family:JetBrains Mono,monospace;font-size:.65rem;max-height:200px;overflow-y:auto}.pm-boot-line{color:hsla(var(--hue),var(--saturation),var(--lightness),.7);line-height:1.6}.pm-boot--ok{color:#28c840}.pm-boot-prefix{color:hsla(calc(var(--hue) - 25),var(--saturation),var(--lightness),.6);margin-right:.5rem}.pm-body{flex:1;min-height:0;overflow-y:auto;padding:1.5rem 1.8rem;display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:768px){.pm-body.has-architecture{grid-template-columns:1.1fr .9fr;align-items:start;gap:2rem}}.pm-details-col,.pm-arch-col{display:flex;flex-direction:column;gap:1.5rem}@media(min-width:768px){.pm-arch-col{position:sticky;top:0}}.pm-section{display:flex;flex-direction:column;gap:.5rem}.pm-section-title{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-accent);margin:0}.pm-text{font-size:.8rem;line-height:1.6;color:#ffffffbf;margin:0}.pm-dataflow{border:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.1);border-radius:12px;overflow:hidden;background:#ffffff03}.pm-dataflow-header{font-family:JetBrains Mono,monospace;font-size:.6rem;color:hsla(calc(var(--hue) - 25),var(--saturation),var(--lightness),.6);padding:.6rem .8rem;background:hsla(var(--hue),var(--saturation),var(--lightness),.04);border-bottom:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.08);letter-spacing:.08em}.pm-dataflow-schematic{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1rem;gap:0}.pm-dataflow-step{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}.pm-node{padding:.6rem .8rem;border-radius:8px;border:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.15);background:hsla(var(--hue),var(--saturation),var(--lightness),.04);text-align:center;width:100%;max-width:220px;box-shadow:0 4px 12px #0000001a;transition:transform .2s ease,border-color .2s ease}.pm-node:hover{transform:translateY(-2px);border-color:hsla(var(--hue),var(--saturation),var(--lightness),.3)}.pm-node--hw{border-color:#ef444459;background:#ef44440a}.pm-node--mcu{border-color:#10b98159;background:#10b9810a}.pm-node--sw{border-color:#3b82f659;background:#3b82f60a}.pm-node--output{border-color:#f59e0b59;background:#f59e0b0a}.pm-node--cloud{border-color:#8b5cf659;background:#8b5cf60a}.pm-node--api{border-color:#06b6d459;background:#06b6d40a}.pm-node-label{font-family:JetBrains Mono,monospace;font-size:.6rem;color:#ffffffe6;line-height:1.4;word-wrap:break-word}.pm-node-badge{font-family:JetBrains Mono,monospace;font-size:.45rem;color:hsla(var(--hue),var(--saturation),var(--lightness),.5);letter-spacing:.1em;margin-top:.3rem}.pm-conn{display:flex;flex-direction:column;align-items:center;padding:.3rem 0;gap:.2rem}.pm-conn-line{width:1px;height:24px;background:linear-gradient(180deg,hsla(var(--hue),var(--saturation),var(--lightness),.3),hsla(var(--hue),var(--saturation),var(--lightness),.6));position:relative}.pm-conn-line:after{content:"▾";position:absolute;left:50%;bottom:-4px;transform:translate(-50%);color:hsla(var(--hue),var(--saturation),var(--lightness),.6);font-size:.5rem}.pm-conn-label{font-family:JetBrains Mono,monospace;font-size:.48rem;color:hsla(var(--hue),var(--saturation),var(--lightness),.45);margin-top:.1rem;white-space:nowrap}.pm-tech-tags{display:flex;flex-wrap:wrap;gap:.4rem}.pm-tech-tag{font-family:JetBrains Mono,monospace;font-size:.6rem;padding:.25rem .6rem;border:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.2);border-radius:100vmax;color:hsla(var(--hue),var(--saturation),var(--lightness),.7);background:hsla(var(--hue),var(--saturation),var(--lightness),.04);letter-spacing:.05em}.pm-links{display:flex;flex-wrap:wrap;gap:.5rem;padding-top:1rem;border-top:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.08);margin-top:.5rem}.pm-link-btn{display:inline-flex;align-items:center;gap:.35rem;font-family:JetBrains Mono,monospace;font-size:.62rem;color:#ffffffa6;padding:.4rem .8rem;border:1px solid hsla(var(--hue),var(--saturation),var(--lightness),.15);border-radius:100vmax;text-decoration:none;transition:all .3s ease;letter-spacing:.05em;text-transform:uppercase}.pm-link-btn:hover{color:#fff;border-color:var(--text-accent);background:hsla(var(--hue),var(--saturation),var(--lightness),.1);box-shadow:0 4px 16px hsla(var(--hue),var(--saturation),var(--lightness),.15)}@media(max-width:767px){.pm-modal{max-height:90vh}}
