/* Client portal – extends panel.css */
.portal .sidebar{background:linear-gradient(180deg,#0f5f73,#1c4b56)}
.okmsg{background:#dcf3ec;color:#0e6b56;padding:8px 10px;border-radius:6px;font-size:13px}
.login-card .back{margin-top:14px;text-align:center}
.welcome{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:linear-gradient(120deg,#1c4b56,#008cad);color:#fff;border-radius:16px;padding:22px 24px;margin-bottom:16px;box-shadow:0 6px 20px #1c4b5630}
.welcome h2{color:#fff;margin:0 0 4px;font-size:20px}.welcome p{margin:0;opacity:.9}.welcome .btn{background:#fbb81e;color:#1c4b56}
.panel.empty{text-align:center;padding:36px 20px}
.alert{background:#fff4d6;border:1px solid #f0d58a;color:#7a5600;padding:10px 14px;border-radius:10px;margin-bottom:10px}
.stepper{display:flex;gap:0;overflow-x:auto;padding:8px 0 14px;margin-bottom:6px}
.step{flex:1;min-width:92px;text-align:center;position:relative;font-size:11.5px;color:#6b8389}
.step:before{content:'';position:absolute;top:14px;left:-50%;width:100%;height:3px;background:#dbe8ec;z-index:0}.step:first-child:before{display:none}
.step i{position:relative;z-index:1;display:inline-flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:#dbe8ec;color:#6b8389;font-style:normal;font-weight:600;margin-bottom:6px}
.step span{display:block;padding:0 4px}
.step.done i{background:#14866d;color:#fff}.step.done:before,.step.now:before{background:#14866d}
.step.now i{background:#fbb81e;color:#1c4b56;box-shadow:0 0 0 4px #fbb81e44}.step.now span{color:#1c4b56;font-weight:600}
.stepper.refused .step.now i{background:#e0533d;color:#fff}
.bubble.me{align-self:flex-end;background:#1c4b56;color:#fff}.bubble.them{align-self:flex-start;background:#f1f5f6}
.thread.big{max-height:480px}
.note{color:#a33}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#toast.err{background:#a33}
@media(max-width:860px){.grid2{grid-template-columns:1fr}.step{min-width:76px}}
