.pp{margin:var(--space-xl) 0 var(--space-md) 0;background:color-mix(in srgb,var(--color-surface) 40%,var(--color-bg));border:1px solid color-mix(in srgb,var(--color-text) 6%,transparent);border-radius:var(--radius-lg);overflow:hidden}.pp__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);border-bottom:1px solid color-mix(in srgb,var(--color-text) 5%,transparent)}.pp__header svg{color:var(--color-accent);flex-shrink:0}.pp__title{color:var(--color-text)}.pp__badge{margin-left:auto;font-size:.68rem;font-weight:600;padding:.15em .6em;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-accent) 10%,transparent);color:var(--color-accent);text-transform:none;letter-spacing:0}.pp__body{padding:var(--space-md) var(--space-lg)}.pp__loading,.pp__empty{font-size:.88rem;color:var(--color-text-muted);margin:0;font-style:italic}.pp__section{margin:0 0 var(--space-md) 0}.pp__section:last-child{margin-bottom:0}.pp__section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin:0 0 var(--space-sm) 0}.pp__tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.5rem}.pp__tool{display:flex;gap:var(--space-sm);padding:.6rem .85rem;background:var(--color-bg);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);border-radius:var(--radius-md);text-decoration:none;color:var(--color-text);transition:border-color .15s,transform .15s}.pp__tool:hover{border-color:var(--color-accent);transform:translateY(-1px)}.pp__tool-icon{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-accent) 10%,transparent);color:var(--color-accent);border-radius:var(--radius-sm);flex-shrink:0}.pp__tool-body{display:flex;flex-direction:column;gap:.1rem;min-width:0}.pp__tool-body strong{font-size:.9rem;line-height:1.3}.pp__tool-meta{font-size:.76rem;color:var(--color-text-muted)}.pp__articles{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.pp__article{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .75rem;background:var(--color-bg);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);border-radius:var(--radius-sm);text-decoration:none;color:var(--color-text);transition:border-color .15s}.pp__article:hover{border-color:var(--color-accent)}.pp__article strong{font-size:.88rem;line-height:1.35}.pp__article-desc{font-size:.78rem;color:var(--color-text-muted);line-height:1.4}.pp__share-toggle{margin-left:auto;background:transparent;border:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);color:var(--color-accent);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2em .75em;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit}.pp__share-toggle:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.pp__share-panel{padding:var(--space-md) var(--space-lg);border-top:1px solid color-mix(in srgb,var(--color-text) 6%,transparent);background:color-mix(in srgb,var(--color-accent) 3%,transparent)}.pp__share-intro{font-size:.85rem;color:var(--color-text-muted);line-height:1.55;margin:0 0 var(--space-md) 0}.pp__share-row{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-md)}.pp__share-btn{font-size:.82rem;padding:.4rem .85rem}.pp__share-import{display:flex;flex-direction:column;gap:.4rem}.pp__share-label{font-size:.78rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.pp__share-import textarea{padding:.55rem .75rem;border:1px solid color-mix(in srgb,var(--color-text) 15%,transparent);border-radius:var(--radius-md);font-size:.85rem;font-family:var(--font-mono);background:var(--color-bg);resize:vertical}.pp__share-status{margin-top:var(--space-sm);font-size:.85rem;min-height:1.2em}.pp__share-status--ok{color:#15803d;font-weight:600}.pp__share-status--error{color:#b45309;font-weight:600}@media print{.pp{display:none}}
