/* Scoped shadcn-style port for the personal watchlist/routines workspaces. */
body#sp-app[data-ui="components"]:has(.personal-workspace) { background:#f4f4f5!important; color:#09090b; }
body#sp-app[data-ui="components"] .personal-workspace { max-width:1440px; margin:0 auto; padding:32px 32px 72px!important; }
body#sp-app[data-ui="components"] .personal-page-header { align-items:center!important; gap:24px; margin-bottom:24px!important; }
body#sp-app[data-ui="components"] .personal-page-header h1 { margin:0; color:#09090b!important; font-size:28px!important; font-weight:650; line-height:1.25; letter-spacing:-.035em; }
body#sp-app[data-ui="components"] .personal-count { display:inline-flex; margin-left:8px; padding:3px 8px; border-radius:6px; background:#e4e4e7; color:#52525b!important; font-size:13px!important; font-weight:500!important; letter-spacing:0; vertical-align:middle; }
body#sp-app[data-ui="components"] .watchlist-workspace .mb-3 > div,
body#sp-app[data-ui="components"] .watchlist-workspace > .sp-sp-card { background:#fff!important; border:1px solid #e4e4e7!important; border-radius:12px!important; box-shadow:0 1px 2px rgb(0 0 0 / 4%)!important; }
body#sp-app[data-ui="components"] .watchlist-workspace > .sp-sp-card { overflow:hidden; }
body#sp-app[data-ui="components"] .watchlist-workspace table { min-width:900px; table-layout:fixed; }
body#sp-app[data-ui="components"] .watchlist-workspace table :is(th,td) { text-align:center; vertical-align:middle; }
body#sp-app[data-ui="components"] .watchlist-workspace table :is(th,td):first-child { text-align:left; }
body#sp-app[data-ui="components"] .watchlist-workspace .sc-name { color:#18181b!important; font-size:15px!important; font-weight:600!important; }
body#sp-app[data-ui="components"] .watchlist-workspace :is(.sc-code,.sc-market,.sc-sector) { color:#52525b!important; font-size:12px!important; line-height:1.45; }
body#sp-app[data-ui="components"] .watchlist-workspace tbody td:nth-child(n+2):not(:last-child),
body#sp-app[data-ui="components"] .watchlist-workspace tbody td:nth-child(n+2):not(:last-child) > :is(span,small),
body#sp-app[data-ui="components"] .watchlist-workspace tbody td:nth-child(3) span { color:#27272a!important; font-size:14px!important; }
body#sp-app[data-ui="components"] .watchlist-workspace tbody td:nth-child(2) > div > span { display:inline-flex!important; align-items:center; min-height:22px; padding:2px 7px!important; border-color:#d4d4d8!important; border-radius:6px!important; background:#fafafa!important; color:#3f3f46!important; font-size:12px!important; font-weight:500; }
body#sp-app[data-ui="components"] .watchlist-workspace .mb-3 > div > div:first-child > span { font-size:14px!important; }
body#sp-app[data-ui="components"] .watchlist-workspace .mb-3 > div > div:first-child > span:nth-child(n+3),
body#sp-app[data-ui="components"] .watchlist-workspace .mb-3 > div > div:nth-child(2),
body#sp-app[data-ui="components"] .watchlist-workspace .mb-3 a { color:#52525b!important; font-size:12px!important; }
body#sp-app[data-ui="components"] .watchlist-workspace > .sp-sp-card > div:last-child { color:#52525b!important; font-size:12px!important; line-height:1.6; }
body#sp-app[data-ui="components"] .watchlist-workspace .watch-btn,
body#sp-app[data-ui="components"] .watchlist-workspace .buy-btn { display:inline-flex; min-height:36px; align-items:center; justify-content:center; padding:8px 12px!important; border:1px solid #e4e4e7!important; border-radius:6px!important; background:#fff!important; color:#18181b!important; font-size:14px!important; font-weight:500; line-height:1.2; }
body#sp-app[data-ui="components"] .watchlist-workspace .watch-btn.watching,
body#sp-app[data-ui="components"] .watchlist-workspace .buy-btn.active { border-color:#18181b!important; background:#18181b!important; color:#fafafa!important; }
body#sp-app[data-ui="components"] .watchlist-workspace :is(.watch-btn,.buy-btn):hover { background:#f4f4f5!important; }
body#sp-app[data-ui="components"] .watchlist-workspace :is(.watch-btn.watching,.buy-btn.active):hover { background:#27272a!important; }
@media(max-width:1100px) { body#sp-app[data-ui="components"] .personal-workspace { padding-inline:24px!important; } }

/* Routine workspace: cards and controls follow the shared neutral component scale. */
body#sp-app[data-ui="components"] .routines-workspace .personal-page-header > div:first-child { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
body#sp-app[data-ui="components"] .routines-workspace .routine-date,
body#sp-app[data-ui="components"] .routines-workspace .routine-actions > .sp-badge { border-radius:6px!important; padding:4px 8px!important; font-size:13px!important; }
body#sp-app[data-ui="components"] .routines-workspace .routine-button,
body#sp-app[data-ui="components"] .routines-workspace .routine-delete { display:inline-flex; min-height:36px; align-items:center; justify-content:center; border:1px solid #e4e4e7!important; border-radius:6px!important; background:#fff!important; color:#18181b!important; font-size:14px!important; font-weight:500; }
body#sp-app[data-ui="components"] .routines-workspace .routine-button { padding:8px 14px!important; }
body#sp-app[data-ui="components"] .routines-workspace .routine-button-primary { border-color:#18181b!important; background:#18181b!important; color:#fafafa!important; }
body#sp-app[data-ui="components"] .routines-workspace .routine-delete { min-width:30px; min-height:30px; padding:4px 8px!important; color:#71717a!important; }
body#sp-app[data-ui="components"] .routines-workspace > .row .sp-sp-card,
body#sp-app[data-ui="components"] .routines-workspace > .sp-sp-card { overflow:hidden; border:1px solid #e4e4e7!important; border-radius:12px!important; background:#fff!important; box-shadow:0 1px 2px rgb(0 0 0 / 4%)!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-sp-card > [class*="-header"] { padding:16px 20px!important; border:0!important; border-bottom:1px solid #e4e4e7!important; border-radius:0!important; background:#fafafa!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-sp-card > [class*="-header"] span:first-child { color:#18181b!important; font-size:16px!important; font-weight:600!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-sp-card > [class*="-body"] { padding:16px 20px!important; border:0!important; border-radius:0!important; background:#fff!important; box-shadow:none!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-routine-item { gap:14px; padding:14px 20px!important; border-bottom:1px solid #e4e4e7; background:#fff!important; }
body#sp-app[data-ui="components"] .routines-workspace .routine-name { flex:0 0 100%; color:#18181b!important; font-size:15px!important; font-weight:600; }
body#sp-app[data-ui="components"] .routines-workspace .sp-routine-item .flex-grow-1 > div:last-child { color:#52525b!important; font-size:13px!important; line-height:1.55!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-routine-item .rt-link { padding:3px 8px!important; border-radius:6px!important; background:#fafafa!important; color:#3f3f46!important; font-size:12px!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-routine-item input[type="checkbox"] { width:18px; height:18px; accent-color:#18181b; }
body#sp-app[data-ui="components"] .routines-workspace .sp-progress { overflow:hidden; border-radius:999px!important; background:#e4e4e7!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-progress-bar { background:#18181b!important; }
body#sp-app[data-ui="components"] .routines-workspace .sp-badge { border-radius:6px!important; background:#f4f4f5!important; color:#3f3f46!important; }

/* Heatmaps remain dense visual matrices, exempt from the shared data-table padding. */
body#sp-app[data-ui="components"] .routines-workspace :is(.weekly-hm,.monthly-hm,.annual-hm) table { width:max-content!important; background:#fff!important; }
body#sp-app[data-ui="components"] .routines-workspace :is(.weekly-hm,.monthly-hm,.annual-hm) :is(th,td) { height:auto!important; padding:1px 2px!important; border:0!important; background:#fff!important; color:#52525b!important; line-height:1.2!important; }
body#sp-app[data-ui="components"] .routines-workspace .weekly-hm :is(th,td) { font-size:12px!important; }
body#sp-app[data-ui="components"] .routines-workspace .weekly-hm table { width:100%!important; table-layout:fixed; }
body#sp-app[data-ui="components"] .routines-workspace .weekly-hm th:first-child,
body#sp-app[data-ui="components"] .routines-workspace .weekly-hm td:first-child { width:100px!important; min-width:100px!important; max-width:100px; }
body#sp-app[data-ui="components"] .routines-workspace .weekly-hm .w-cell { width:20px; height:20px; border-radius:4px; font-size:12px; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm :is(.mh-th,.mh-name) { font-size:12px!important; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm .mh-cell { width:22px; height:18px; border-radius:3px!important; background:#e4e4e7!important; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm .mh-cell.done { background:#18181b!important; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm .mh-cell.future { background:#f4f4f5!important; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm .mh-cell.today { outline:1px solid #18181b; }
body#sp-app[data-ui="components"] .routines-workspace .annual-hm :is(.ah-head,.ah-name) { font-size:12px!important; }
body#sp-app[data-ui="components"] .routines-workspace .annual-hm .ah-cell { width:6px; height:14px; background:#e4e4e7!important; }
body#sp-app[data-ui="components"] .routines-workspace .annual-hm .ah-cell.done,
body#sp-app[data-ui="components"] .routines-workspace .annual-hm .ah-cell.today { background:#18181b!important; }
body#sp-app[data-ui="components"] .routines-workspace .monthly-hm,
body#sp-app[data-ui="components"] .routines-workspace .annual-hm { padding:16px!important; overflow-x:auto; }
body#sp-app[data-ui="components"] .routines-workspace .-close { width:32px; height:32px; border:0; border-radius:6px!important; background:transparent; color:#18181b; font-size:22px; line-height:1; }
body#sp-app[data-ui="components"] .routines-workspace .modal-content { overflow:hidden; border:1px solid #e4e4e7!important; border-radius:12px!important; background:#fff!important; color:#18181b!important; box-shadow:0 12px 32px rgb(0 0 0 / 12%)!important; }
body#sp-app[data-ui="components"] .routines-workspace .modal-header,
body#sp-app[data-ui="components"] .routines-workspace .modal-footer { border-color:#e4e4e7!important; background:#fff!important; }
body#sp-app[data-ui="components"] .routines-workspace .modal-title { font-size:18px!important; font-weight:600; }
body#sp-app[data-ui="components"] .routines-workspace .modal-body .sp-label { display:block; margin-bottom:6px; color:#27272a!important; font-size:14px!important; font-weight:500; }
body#sp-app[data-ui="components"] .routines-workspace .modal-body .sp-input { min-height:38px; padding:8px 12px!important; border:1px solid #d4d4d8!important; border-radius:6px!important; background:#fff!important; color:#18181b!important; font-size:14px!important; }
body#sp-app[data-ui="components"] .routines-workspace .modal-footer .btn { min-height:36px; padding:8px 14px!important; border:1px solid #d4d4d8!important; border-radius:6px!important; background:#fff!important; color:#18181b!important; font-size:14px!important; font-weight:500; }
body#sp-app[data-ui="components"] .routines-workspace .modal-footer .btn:last-child { border-color:#18181b!important; background:#18181b!important; color:#fafafa!important; }
@media(max-width:1100px) { body#sp-app[data-ui="components"] .routines-workspace .personal-page-header { align-items:flex-start!important; } }
