:root{font:15px system-ui,sans-serif;color:#1b1b20;background:#f4f4f6;--line:#e6e6ea;--muted:#64646e;--red:#bc1b32}
*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:white;color:inherit;border-radius:8px;padding:.62rem .85rem}button:hover:not(:disabled){border-color:var(--red)}button:disabled{cursor:default;opacity:.45}.primary{background:var(--red);border-color:var(--red);color:white;font-weight:650}input,select,textarea{width:100%;min-width:0;padding:.62rem .75rem;border:1px solid var(--line);border-radius:8px;background:white;color:inherit}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--red);outline-offset:2px}textarea{min-height:84px;resize:vertical}h1,h2,p{margin:0}h1{font-size:clamp(1.7rem,4vw,2.6rem);letter-spacing:-.045em}h2{font-size:1.2rem}p,small{color:var(--muted)}label{display:grid;gap:.35rem;font-weight:600}label+label{margin-top:.75rem}.workspace{display:grid;grid-template-columns:220px 1fr;min-height:100dvh}aside{background:#17171b;color:white;display:flex;flex-direction:column;padding:1.5rem 1rem;gap:2.3rem}aside button{background:transparent;border-color:transparent;text-align:left;color:#ececef}aside button[aria-current]{background:#36363e;border-color:#5d5d67}aside nav{display:grid;gap:.45rem}aside #logout{margin-top:auto}.brand{display:flex;align-items:center;gap:.7rem;padding:0 .25rem}.brand small{display:block;color:#bdbdc5}.mark{display:inline-grid;place-items:center;background:var(--red);color:white;border-radius:10px;width:42px;height:42px;font-weight:800}.content{width:100%;max-width:1520px;margin:auto;padding:clamp(1rem,4vw,3rem);align-self:start;margin-top:0;min-width:0}header,.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.eyebrow{text-transform:uppercase;font-size:.72rem;font-weight:750;letter-spacing:.1em;margin-bottom:.35rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-bottom:1.25rem}.stat,.panel{background:white;border:1px solid var(--line);border-radius:12px}.stat{padding:1rem}.stat strong{display:block;font-size:1.5rem;margin-top:.2rem}.toolbar,.pager{display:flex;gap:.65rem;padding:1rem}.toolbar select{max-width:220px}.pager{justify-content:flex-end}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:500px}th,td{border-top:1px solid var(--line);text-align:left;padding:.7rem 1rem}th{color:var(--muted);font-size:.82rem;background:#fafafb}.record{padding:0;border:0;font-weight:650;text-align:left;background:none}.record:hover{text-decoration:underline}.empty{padding:1.5rem}.import,.login .panel{padding:1.5rem}.import form{max-width:620px;margin-top:1.2rem}.import p{margin-top:.6rem}.actions,#linked{display:flex;gap:.65rem;flex-wrap:wrap;margin-top:1rem}details{margin-top:1rem}details label{margin-top:.75rem}summary{cursor:pointer}.login{min-height:100dvh;display:grid;place-items:center;padding:1rem}.login .panel{width:min(100%,380px);display:grid;gap:1rem}dialog{width:min(94vw,690px);max-height:85dvh;border:1px solid var(--line);border-radius:14px;padding:1.4rem;color:inherit}dialog::backdrop{background:#16161999}.fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.fields label{margin:0}.fields label:has(textarea){grid-column:1/-1}dl{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:.6rem;overflow-wrap:anywhere}dd{margin:0;white-space:pre-wrap}dt{color:var(--muted)}[role=alert]{color:var(--red);margin:.6rem 0}[role=alert]:empty{display:none}
@media(max-width:730px){.workspace{grid-template-columns:1fr}aside{gap:.75rem;padding:.75rem}aside nav{display:flex;flex-wrap:wrap}aside #logout{position:absolute;right:.75rem;top:.75rem}.toolbar{flex-wrap:wrap}.toolbar select{flex:1;max-width:none}.fields{grid-template-columns:1fr}}
.company-label { display: block; margin-top: .2rem; }
.permissions { margin: 1rem 0; border: 1px solid var(--line); border-radius: 8px; padding: .6rem .9rem .9rem; }
.permissions legend { font-weight: 650; padding: 0 .25rem; }
.permissions details { margin-top: 0; }
.check { display: flex; align-items: center; gap: .55rem; margin-top: .8rem; }
.check input { width: auto; }
#access > label { max-width: 620px; margin-top: 1rem; }
#identity { color: #dddde4; }
#history-items { padding-left: 1.25rem; }
#history-items li + li { margin-top: .5rem; }
.board { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(225px, 1fr); gap: .8rem; overflow-x: auto; padding: 0 1rem 1rem; align-items: start; }
.column { display: grid; gap: .65rem; padding: .65rem; min-height: 145px; border: 1px solid var(--line); border-top: 3px solid #9ca3af; border-radius: 9px; background: #f7f7f9; }
.column.won { border-top-color: #27834d; }
.column.lost { border-top-color: var(--red); }
.column h2 { font-size: .95rem; overflow-wrap: anywhere; }
.deal-tile { display: grid; gap: .3rem; padding: .7rem; background: #fff; border: 1px solid var(--line); border-radius: 7px; overflow-wrap: anywhere; color: inherit; text-decoration: none; }
.deal-tile:hover, .deal-tile:focus-visible { border-color: var(--red); }
.deal-tile[draggable=true] { cursor: grab; }
.deal-tile .record { justify-self: start; }
.column-empty { padding: .3rem 0; }
.workflow-stages { display: grid; gap: .55rem; margin-top: 1rem; }
.workflow-stage { display: grid; grid-template-columns: auto minmax(0,1fr) minmax(0,1fr) auto; align-items: center; gap: .5rem; }
.stage-grip { cursor: grab; font-size: 1.35rem; color: var(--muted); padding: .2rem; user-select: none; }
.stage-controls { display: flex; gap: .25rem; }
.stage-controls button { padding: .5rem; }
.header-actions { display: flex; gap: .55rem; flex-wrap: wrap; justify-content: flex-end; }
#workflow { margin-bottom: 1rem; }
.field-config-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; gap: .5rem; align-items: center; }
.field-config-row label { margin: 0; }
.record { color: inherit; text-decoration: none; }
aside nav a { color: #ececef; text-decoration: none; border: 1px solid transparent; border-radius: 8px; padding: .62rem .85rem; }
aside nav a:hover { border-color: var(--red); }
aside nav a[aria-current] { background: #36363e; border-color: #5d5d67; }
.dashboard { padding: .8rem; }
.dashboard a { display: inline-block; margin: .15rem 0 .65rem; color: var(--red); }
.dashboard iframe { display: block; width: 100%; min-height: 76dvh; border: 1px solid var(--line); border-radius: 8px; }
.deal-page { padding: 1.4rem; max-width: 850px; }
.contact-fields { min-width: 0; border: 1px solid var(--line); border-radius: 8px; margin: 0; padding: .65rem; }
.contact-fields legend { font-weight: 650; }
.contact-fields > button { margin-top: .5rem; }
.contact-inputs { display: grid; gap: .4rem; }
.contact-input { display: flex; gap: .4rem; }
#save-card { margin-top: .8rem; }
.allowed-stages { max-height: 220px; overflow: auto; padding: 0 .5rem .5rem; }
#access .table-wrap { margin-top: 1rem; }
#back-board { white-space: nowrap; }
@media (max-width: 530px) { .workflow-stage { grid-template-columns: auto minmax(0,1fr) minmax(0,1fr); } .stage-controls { grid-column: 2/-1; } }
