
/* Switch Tasks Pro - minimal clean UI */
.stp-wrap, .stp-manage { max-width: 1100px; margin: 18px auto; }
.stp-toolbar { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-bottom: 12px; }
.stp-toolbar input, .stp-toolbar select { padding:10px 12px; border:1px solid #ddd; border-radius:12px; min-width: 220px; background:#fff; }
.stp-view { background:#fff; border:1px solid #eee; border-radius:16px; padding:12px; }
.stp-empty { padding:14px; border:1px dashed #ddd; border-radius:16px; background:#fff; }

/* Buttons */
.stp-btn { border:1px solid #ddd; background:#fff; padding:10px 12px; border-radius:12px; cursor:pointer; }
.stp-btn--primary { border-color:#111; }

/* Kanban */
.stp-kanban { display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; }
@media (max-width: 900px){ .stp-kanban{ grid-template-columns:1fr; } }
.stp-col { border:1px solid #eee; border-radius:16px; overflow:hidden; background:#fafafa; }
.stp-col__head { padding:10px 12px; font-weight:700; background:#fff; border-bottom:1px solid #eee; display:flex; justify-content:space-between; }
.stp-col__body { padding:10px; min-height: 120px; display:flex; flex-direction:column; gap:10px; }
.stp-card { background:#fff; border:1px solid #eee; border-radius:14px; padding:10px; cursor:pointer; box-shadow: 0 1px 0 rgba(0,0,0,.02); }
.stp-card__title { font-weight:700; margin:0 0 6px 0; }
.stp-pill { display:inline-block; font-size:12px; padding:4px 10px; border:1px solid #eee; border-radius:999px; background:#fafafa; }
.stp-meta { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-top:8px; }
.stp-muted { opacity:.7; font-size:12px; }

/* Environment pills */
.stp-env { display:inline-block; font-size:12px; font-weight:700; padding:4px 10px; border-radius:999px; letter-spacing:.02em; }
.stp-env--uat { background:#e7f1ff; color:#1155cc; border:1px solid #c9dfff; }
.stp-env--preprod { background:#fff4e0; color:#a15c00; border:1px solid #ffe1a8; }
.stp-env--production { background:#fde8e8; color:#b32020; border:1px solid #f7c6c6; }

/* Cards view */
.stp-cards { display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; }
@media (max-width: 1000px){ .stp-cards{ grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 640px){ .stp-cards{ grid-template-columns: 1fr;} }

/* Table view */
.stp-table { width:100%; border-collapse: collapse; }
.stp-table th, .stp-table td { padding:12px; border-bottom:1px solid #eee; vertical-align:top; }
.stp-table th { background:#fafafa; text-align:left; }
.stp-row { cursor:pointer; }

/* Modal */
.stp-modal { position:fixed; inset:0; display:none; z-index:9999; }
.stp-modal.is-open { display:block; }
.stp-modal__overlay { position:absolute; inset:0; background: rgba(0,0,0,.35); }
.stp-modal__panel { position:relative; max-width: 760px; margin: 6vh auto; background:#fff; border-radius:18px; border:1px solid #eee; padding: 14px; box-shadow: 0 18px 60px rgba(0,0,0,.2); }
.stp-modal__close { position:absolute; top:10px; right:12px; border:none; background:transparent; font-size:26px; cursor:pointer; }
.stp-modal__content h3 { margin: 0 0 10px; }
.stp-form .stp-field{ margin-bottom:10px; }
.stp-form label{ display:block; font-weight:700; margin-bottom:6px; }
.stp-form input, .stp-form textarea, .stp-form select { width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:12px; }
.stp-form textarea{ min-height: 120px; }

/* Manage list */
.stp-manage__header{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:10px; }
.stp-manage__list{ background:#fff; border:1px solid #eee; border-radius:16px; overflow:hidden; }
.stp-manage__item{ display:flex; justify-content:space-between; gap:10px; padding:12px; border-bottom:1px solid #eee; }
.stp-actions{ display:flex; gap:8px; }

/* Login gate */
.stp-login-gate { max-width:360px; margin: 40px auto; background:#fff; border:1px solid #eee; border-radius:16px; padding:20px; }
.stp-login-gate p.login-remember { margin: 10px 0; }
.stp-login-gate p.login-submit { margin-top: 14px; }
.stp-login-gate input[type="text"],
.stp-login-gate input[type="password"] { width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:12px; margin-top:4px; }
.stp-login-gate label { font-weight:600; display:block; margin-top:10px; }

/* Pagination */
.stp-pagination { display:flex; align-items:center; justify-content:center; gap:14px; margin-top:16px; padding-top:12px; border-top:1px solid #eee; }
.stp-pagination button:disabled { opacity:.4; cursor:default; }

