@charset "UTF-8";:root{--pp-bg: #0D0D12;--pp-surface: #161621;--pp-card: #1E1E2E;--pp-card-hover: #252538;--pp-border: rgba(255,255,255,.07);--pp-primary: #E63560;--pp-orange: #FF9800;--pp-blue: #4FC3F7;--pp-green: #4CAF50;--pp-purple: #9C27B0;--pp-red: #FF5C7A;--pp-text: #FFFFFF;--pp-text-soft: #B0B0C0;--pp-text-muted: #606070;--pp-text-hint: #404050;--pp-grad: linear-gradient(90deg, #E63560, #FF9800);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--pp-bg);color:var(--pp-text);font:14.5px/1.5 -apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:400;margin:0;line-height:1.15}h1{font-size:28px}h2{font-size:20px}h3{font-size:16px}a{color:var(--pp-blue);text-decoration:none}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--pp-orange);outline-offset:2px}.card{background:var(--pp-card);border:1px solid var(--pp-border);border-radius:16px;padding:18px 20px}.kicker{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--pp-orange)}.muted{color:var(--pp-text-muted)}.soft{color:var(--pp-text-soft)}.row{display:flex;align-items:center;gap:10px}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:12px}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:12px;border:1px solid var(--pp-border);background:var(--pp-surface);color:var(--pp-text);font-weight:700;font-size:13.5px;white-space:nowrap}.btn:hover{background:var(--pp-card-hover)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--pp-grad);border-color:transparent;color:#fff;box-shadow:0 8px 20px #e6356047}.btn.danger{color:var(--pp-red)}.btn.sm{height:32px;padding:0 12px;font-size:12.5px;border-radius:10px}.btn.ghost{background:transparent}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--pp-text-muted)}.input,select.input,textarea.input{width:100%;height:42px;padding:0 12px;border-radius:12px;border:1px solid var(--pp-border);background:var(--pp-bg);color:var(--pp-text);outline:none}.input:focus,select.input:focus,textarea.input:focus{border-color:var(--pp-primary)}textarea.input{height:auto;min-height:84px;padding:10px 12px;resize:vertical}.chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:100px;font-size:12px;font-weight:700;border:1px solid var(--pp-border);color:var(--pp-text-soft);background:var(--pp-surface)}.chip.on{background:var(--pp-grad);color:#fff;border-color:transparent}.chip.ok{color:var(--pp-green);border-color:#4caf5066}.chip.warn{color:var(--pp-orange);border-color:#ff980066}.chip.bad{color:var(--pp-red);border-color:#ff5c7a66}.chip.info{color:var(--pp-blue);border-color:#4fc3f766}.chip.purple{color:#b39ddb;border-color:#9c27b080}.chip.clickable{cursor:pointer}.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--pp-surface);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--pp-text-soft);flex:0 0 40px;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.lg{width:64px;height:64px;flex-basis:64px;font-size:24px}.avatar.sm{width:28px;height:28px;flex-basis:28px;font-size:12px}.tbl{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th,.tbl td{text-align:left;padding:10px;border-top:1px solid var(--pp-border);vertical-align:middle}.tbl thead th{border-top:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--pp-text-muted)}.tbl tbody tr:hover{background:var(--pp-card-hover)}.tbl td.num{text-align:right;font-variant-numeric:tabular-nums}.tbl-wrap{overflow-x:auto;border:1px solid var(--pp-border);border-radius:16px;background:var(--pp-card)}.empty{text-align:center;padding:36px 20px;color:var(--pp-text-muted)}.empty .big{font-size:40px}.empty p{margin:8px 0 0}.err{color:var(--pp-red);font-weight:600;font-size:13px}.banner{border-radius:14px;padding:12px 16px;background:#ff98001f;border:1px solid rgba(255,152,0,.35);color:#ffd08a;font-size:13.5px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.banner.ok{background:#4caf501f;border-color:#4caf5059;color:#b9f6bc}.banner.bad{background:#ff5c7a1f;border-color:#ff5c7a66;color:#ffb3c4}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--pp-border);margin-bottom:16px}.tabs button{background:none;border:none;color:var(--pp-text-muted);font-weight:700;padding:10px 14px;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.on{color:var(--pp-text);border-bottom-color:var(--pp-primary)}.bar{height:8px;border-radius:4px;background:var(--pp-surface);overflow:hidden}.bar>i{display:block;height:100%;background:var(--pp-grad);border-radius:4px}.spinner{width:22px;height:22px;border:3px solid var(--pp-border);border-top-color:var(--pp-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.code-big{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:30px;font-weight:800;letter-spacing:.2em}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.side-backdrop{position:fixed;inset:0;background:#0000008c;z-index:30}.side-panel{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);z-index:31;background:var(--pp-card);border-left:1px solid var(--pp-border);padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;box-shadow:-20px 0 60px #0006}.side-panel.wide{width:min(880px,100vw)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.chip.clickable.on{background:var(--pp-grad);color:#fff;border-color:transparent}.ai-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#7e57c2,#e63560);-webkit-background-clip:text;background-clip:text;color:transparent}
