*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#0f0f10;color:#e6e6e6;min-height:100vh}main{padding:24px;max-width:1280px;margin:0 auto}header.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}header.app-header h1{margin:0;font-size:22px;letter-spacing:-.01em}header.app-header .actions{display:flex;gap:8px;flex-wrap:wrap}.subtitle{color:#8b8b91;font-size:13px;margin:4px 0 0}.grid{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:24px;gap:24px}@media (max-width:900px){.grid{grid-template-columns:1fr}}.panel{background:#1a1a1c;border:1px solid #2a2a2d;border-radius:10px;padding:16px 18px 18px}.panel h2{margin:0 0 12px;font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:#d0d0d6;border-bottom:1px solid #2a2a2d;padding-bottom:10px}.empty{color:#8b8b91;font-size:13px;font-style:italic}.category{margin-bottom:16px}.category h3{margin:12px 0 6px;color:#9ecbff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.category ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.entry-row{display:flex;justify-content:space-between;align-items:stretch;gap:8px;padding:10px 12px;border-radius:6px;background:#232327;border:1px solid #2a2a2d}.entry-row .entry-info{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:0}.entry-row .name{font-weight:600;font-size:13px}.entry-row code{font-size:11px;color:#8b8b91;background:transparent;word-break:break-all}.entry-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.badge{font-size:10px;padding:2px 8px;border-radius:999px;letter-spacing:.05em;text-transform:uppercase}.badge.ok{background:#163d28;color:#6fd190;border:1px solid #1d5435}.badge.missing{background:#4a1f1f;color:#ff8b8b;border:1px solid #6b2929}.attach-btn{font-size:11px;padding:4px 8px;border-radius:4px;background:#2a2a2d;color:#e6e6e6;border:1px solid #38383d;cursor:pointer}.attach-btn:hover{background:#353539}.attach-btn input{display:none}.icon-btn{background:transparent;border:1px solid #38383d;color:#c8c8ce;width:28px;height:28px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:14px;align-self:flex-start}.icon-btn:hover{background:#2a2a2d;color:#ff8b8b;border-color:#6b2929}form.add-form{gap:12px}form.add-form,label.field{display:flex;flex-direction:column}label.field{gap:4px;font-size:12px;color:#b0b0b6;text-transform:uppercase;letter-spacing:.05em}input[type=file],input[type=text],select{background:#0f0f10;border:1px solid #2a2a2d;color:#e6e6e6;padding:9px 10px;border-radius:6px;font-size:13px;font-family:inherit}input[type=text]:focus,select:focus{outline:none;border-color:#2c8eff}.preview{font-size:12px;color:#8b8b91;margin:0;padding:8px 10px;background:#0f0f10;border:1px dashed #2a2a2d;border-radius:6px;word-break:break-all}.preview code{color:#9ecbff;background:transparent}button.primary{background:#2c8eff;color:#fff;border:none;padding:10px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.02em}button.primary:hover{background:#1a7eef}button.primary:disabled{background:#1d3a5e;color:#6f8eb0;cursor:not-allowed}button.secondary{background:#2a2a2d;color:#e6e6e6;border:1px solid #38383d;padding:10px 16px;border-radius:6px;cursor:pointer;font-size:13px}button.secondary:hover{background:#353539}button.danger{background:#4a1f1f;color:#ff8b8b;border:1px solid #6b2929;padding:10px 16px;border-radius:6px;cursor:pointer;font-size:13px}button.danger:hover{background:#5a2828}.summary{font-size:12px;color:#8b8b91;margin:0 0 12px}