/* ---------- panel na żywo: dodatki do stylów makiet ---------- */
.form-err { margin-top: 18px; padding: 12px 14px; border-radius: 12px; background: rgba(255, 122, 122, 0.1); box-shadow: inset 0 0 0 1px rgba(255, 122, 122, 0.4); color: #ffc4c4; font-weight: 650; font-size: 0.94rem; }
.box .form-err { margin: 0 0 16px; }
.field-err { color: #ff9a9a; font-size: 0.86rem; font-weight: 650; }
.has-err .input { box-shadow: inset 0 0 0 2px #ff7a7a; }
.msgs { display: grid; gap: 8px; margin: -8px 0 18px; }
.msg { padding: 12px 16px; border-radius: 14px; font-weight: 650; font-size: 0.94rem; background: rgba(91, 225, 111, 0.1); box-shadow: inset 0 0 0 1px rgba(91, 225, 111, 0.35); color: #c9f5d1; }
.msg-warning { background: rgba(255, 181, 71, 0.1); box-shadow: inset 0 0 0 1px rgba(255, 181, 71, 0.4); color: #ffe2a8; }
.msg-error { background: rgba(255, 122, 122, 0.1); box-shadow: inset 0 0 0 1px rgba(255, 122, 122, 0.4); color: #ffc4c4; }

.head-stack { margin-right: auto; min-width: 0; }
.head-stack .crumbs { margin: 0 0 2px; }
.btn-top { min-height: 44px; padding: 10px 18px; font-size: 0.92rem; flex: none; }
.btn-top svg { width: 18px; height: 18px; }
.topbar .search { margin-left: auto; }
.side-nav .nav-soon { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 44px; padding: 8px 12px; color: #7f7891; font-weight: 700; font-size: 0.97rem; }
.side-nav .nav-soon svg { width: 20px; height: 20px; }
.side-user form { grid-column: 1 / -1; }
.side-user .link-btn { font-size: 0.86rem; color: var(--on-d-soft); }
.biz-meta { margin: -10px 0 22px; }
.biz-meta .sw { width: 22px; height: 22px; }

.chip-f { display: inline-flex; align-items: center; text-decoration: none; }
.chip-f[aria-current="true"] { background: #fff; color: #18151f; }

.empty-box { display: grid; gap: 12px; justify-items: start; margin-bottom: 18px; background: linear-gradient(135deg, rgba(123, 77, 255, 0.2), rgba(123, 77, 255, 0.05)); box-shadow: inset 0 0 0 1px rgba(196, 173, 255, 0.35); }
.empty-box h2 { font-size: 1.3rem; font-weight: 850; font-stretch: 110%; }
.empty-box p { color: #e6e3ee; max-width: 62ch; }
.empty-note { color: var(--on-d-soft); font-size: 0.92rem; }
.log li.empty { grid-template-columns: minmax(0, 1fr); }

.form-lokal { display: grid; gap: 22px; }
.form-lokal fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.form-lokal legend { padding: 0; margin-bottom: 12px; font-family: var(--display); font-weight: 800; font-stretch: 108%; font-size: 1.15rem; }
.form-grid { display: grid; gap: 16px; }
.form-grid.cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 18px; }
.form-grid .full { grid-column: 1 / -1; }
.form-grid .input, .addon-form .input { min-height: 48px; }
.field-color input[type="color"] { width: 64px; height: 48px; padding: 4px; border: 0; border-radius: 12px; background: var(--night-2); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16); cursor: pointer; }
.box .btn-row .btn { min-height: 44px; }

details.more { margin-top: 16px; border-top: 1px solid var(--line-d); padding-top: 14px; }
details.more > summary { cursor: pointer; font-weight: 800; color: #fff; list-style: none; }
details.more > summary::-webkit-details-marker { display: none; }
details.more > summary::before { content: "+"; display: inline-grid; place-items: center; width: 22px; height: 22px; margin-right: 8px; border-radius: 50%; background: rgba(255, 255, 255, 0.08); }
details.more[open] > summary::before { content: "–"; }
details.more form { margin: 14px 0 10px; }

.feats > li { display: grid; gap: 10px; }
.feat-row { grid-template-columns: minmax(0, 1fr) auto; }
.feat-act > summary { list-style: none; cursor: pointer; justify-self: start; display: inline-flex; }
.feat-act > summary::-webkit-details-marker { display: none; }
details.feat-act[open] > summary { opacity: 0.6; }
.feat-act .feat-panel { margin-top: 10px; }
form.feat-act { justify-self: start; }
.st-wyl, .st-zakonczony { color: #8d87a0; }
.st-p-oplacona { color: #7ee08f; }
.st-p-oczekuje { color: var(--gold); }
.st-p-odrzucona { color: #ff9a9a; }
.seg { border: 0; margin: 0; }
.addons li.gone { opacity: 0.55; }
.addons form { grid-column: 2; grid-row: 1 / span 2; }
.addons li > span { min-width: 0; }

.codes-box { max-width: 720px; }
@media (max-width: 620px) { .form-grid.cols { grid-template-columns: minmax(0, 1fr); } .topbar .btn-top { order: 1; } }
@media print {
  .side, .topbar, .btn-row, .skip, .scrim { display: none !important; }
  .app { display: block; }
  body, .app-body, .box { background: #fff !important; color: #000 !important; box-shadow: none !important; }
  .codes { color: #000; background: #fff; box-shadow: none; }
}
.grid-2 > .box + .box, .grid-2 > section + section { margin-top: 0; }
.grid-2 > div > .box + .box { margin-top: 18px; }
.q .q-ic { display: grid; }
.link-btn.act { font-size: 0.86rem; color: var(--on-d-soft); font-weight: 750; }
.link-btn.act:hover { color: #fff; }
summary.link-btn.act { display: inline; }
.totp-qr svg { display: block; width: 100%; height: auto; aspect-ratio: 1; }
.totp-qr { width: 220px; }
