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