.crm-panel { padding: 1.2rem; margin: 1rem 0; border: 1px solid rgba(150,165,190,.35); border-radius: 1rem; background: rgba(20,28,44,.75); }
.crm-panel[hidden], .crm-panel [hidden] { display: none; }
.crm-toolbar { display: flex; gap: .65rem; flex-wrap: wrap; align-items: center; }
.crm-toolbar label { display: flex; gap: .4rem; }
.crm-panel button, .crm-panel input, .crm-panel select, .crm-panel textarea { font: inherit; border-radius: .45rem; padding: .65rem; }
.crm-panel button { cursor: pointer; }
.crm-panel button:disabled { cursor: default; opacity: .65; }
.crm-board { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: .9rem; margin: 1rem 0; }
.crm-column { min-width: 0; }
.crm-card { display: grid; gap: .4rem; text-align: left; width: 100%; margin-bottom: .6rem; overflow-wrap: anywhere; }
.crm-editor { margin-top: 1.2rem; border-top: 1px solid rgba(150,165,190,.35); padding-top: 1rem; }
.crm-editor form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
.crm-editor label { display: grid; gap: .35rem; min-width: 0; }
.crm-editor textarea { min-height: 5rem; resize: vertical; }
.crm-editor input,.crm-editor select,.crm-editor textarea { width: 100%; box-sizing: border-box; }
.crm-issuer { font-size: .9rem; }
.crm-history details { margin: .5rem 0; }
.crm-history pre { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 680px) { .crm-editor form { grid-template-columns: 1fr; } .crm-toolbar { align-items: stretch; flex-direction: column; } }

.crm-import { margin: .8rem 0; }
.crm-import > section { margin-top: .8rem; padding: 1rem; border: 1px solid rgba(150,165,190,.35); border-radius: .7rem; }
.crm-import-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; margin-bottom: .8rem; }
.crm-import-fields label { display: grid; gap: .35rem; min-width: 0; }
.crm-import-fields input,.crm-import-fields select { box-sizing: border-box; width: 100%; }
.crm-import p { overflow-wrap: anywhere; }
.crm-import-table { overflow-x: auto; max-height: 30rem; }
.crm-import table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.crm-import th,.crm-import td { padding: .55rem; border-bottom: 1px solid rgba(150,165,190,.3); text-align: left; vertical-align: top; min-width: 5rem; max-width: 25rem; overflow-wrap: anywhere; }
.crm-import th { position: sticky; top: 0; background: #182237; }
.crm-import-error,.crm-import-invalid td:last-child { color: #ffc3bd; }
.crm-import-invalid { background: rgba(165,50,40,.16); }
@media (max-width: 680px) { .crm-import-fields { grid-template-columns: 1fr; } }

.crm-comment-form { display: grid; gap: 10px; margin: 18px 0; }
.crm-comment-form label { display: grid; gap: 6px; }
.crm-comment-form textarea { width: 100%; box-sizing: border-box; resize: vertical; }
.crm-comment-text { white-space: pre-wrap; overflow-wrap: anywhere; }
