/* Clarity theme — app-wide: soft blue-grey canvas, white rounded cards, one violet accent.
   Loaded last; restyles existing markup only (no data or behaviour change). */
:root{--cl-bg:#f4f6fb;--cl-card:#ffffff;--cl-line:#e8ebf2;--cl-line-soft:#f0f2f6;--cl-ink:#101828;--cl-text:#344054;--cl-muted:#475467;--cl-accent:#6d5df0;--cl-accent-dark:#5b4bdb;--cl-accent-soft:#f0eefe;--cl-radius:18px;--cl-shadow:0 4px 18px rgba(40,50,90,.05);--sf-accent:#6d5df0;--sf-bg:#f4f6fb}
body,#application,#main{background:var(--cl-bg)!important}
#application{color:var(--cl-ink)}
/* Sidebar */
#application .sidebar{background:#fff!important;border-right:1px solid var(--cl-line)!important}
#application #nav a{border-radius:10px!important;border-left:0!important;font-weight:500;color:var(--cl-muted)!important;transition:background .15s,color .15s}
#application #nav a:hover{background:#f6f7fb!important;color:var(--cl-ink)!important}
#application #nav a.active{background:var(--cl-accent-soft)!important;color:var(--cl-accent)!important;font-weight:600!important;box-shadow:none!important}
#application #nav a.active::before,#application #nav a.active::after{display:none!important}
/* Headings */
#application #main h1{letter-spacing:-.7px}
#application .page-head h1{font-size:28px}
/* Cards */
#application :is(.club-list-panel,.dash-panel,.detail-card,.sf-pure-chart,.dw-week-card,.sf-focus-metric,.statement-clean-panel,.club-summary>div,.ws-notice,.ws-stats>div,.club-profile-card,.dw-money-card,.dw-activity-card,.calendar-panel){background:var(--cl-card)!important;border:1px solid var(--cl-line)!important;border-radius:var(--cl-radius)!important;box-shadow:var(--cl-shadow)!important}
#application :is(.club-list-panel,.dash-panel,.statement-clean-panel){overflow:hidden}
/* Toolbars on top of lists */
#application .club-toolbar{border-bottom-color:var(--cl-line-soft)!important}
/* Tables */
#application #main table th{font-size:11.5px!important;font-weight:700!important;letter-spacing:.6px;text-transform:uppercase;color:var(--cl-muted)!important;background:transparent!important}
#application #main table td{border-color:var(--cl-line-soft)!important}
#application #main table tbody tr{transition:background .12s}
#application #main table tbody tr:hover>td{background:#f8f9fe}
/* Inputs */
#application :is(input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=file]),select,textarea){border-radius:11px!important;border:1px solid #d0d5dd!important;background-color:#fff;font-family:inherit}
#application :is(input,select,textarea):focus{outline:2px solid #c9c2fb!important;outline-offset:0;border-color:var(--cl-accent)!important}
#application :is(.search,select){min-height:42px}
/* Buttons */
#application .button{border-radius:11px!important;font-weight:600!important;border-color:#d0d5dd!important;color:var(--cl-text)}
#application .button.primary{background:var(--cl-accent)!important;border-color:var(--cl-accent)!important;color:#fff!important;box-shadow:0 2px 8px rgba(109,93,240,.25)!important}
#application .button.primary:hover{background:var(--cl-accent-dark)!important;border-color:var(--cl-accent-dark)!important}
#application .text-button{color:var(--cl-accent)}
/* Badges & tags */
#application .badge{border-radius:7px!important;font-weight:650!important}
/* Tabs: segmented pill */
#application :is(.club-detail-tabs,.results-workspace-tabs){display:flex;gap:6px;background:#eef1f7;border:0!important;border-radius:12px;padding:4px;width:max-content;max-width:100%;overflow-x:auto}
#application .club-detail-tabs a,#application .results-workspace-tabs button{border:0!important;border-radius:9px!important;padding:8px 15px!important;font-weight:600;color:var(--cl-muted)!important;white-space:nowrap;background:transparent}
#application .club-detail-tabs a.active,#application .results-workspace-tabs button.active{background:#fff!important;color:var(--cl-accent)!important;box-shadow:0 1px 4px rgba(40,50,90,.1)}
/* Dashboard: the margin tile becomes the violet hero; arrows and colours follow amounts */
#application .sf-focus-metric.sf-focus-margin{background:linear-gradient(125deg,#6d5df0,#8f7cf8)!important;border-color:transparent!important;box-shadow:0 10px 24px rgba(109,93,240,.25)!important;color:#fff}
#application .sf-focus-metric.sf-focus-margin :is(span,strong,small){color:#fff!important}
#application .sf-focus-metric.sf-focus-margin small{opacity:.85}
#application .sf-focus-metric.sf-focus-margin .sf-focus-metric-icon{background:rgba(255,255,255,.18)!important;color:#fff!important}
#application .sf-focus-receivables strong{color:#b42318!important}
#application .sf-focus-payables strong{color:#067647!important}
#application .dw-progress-bar,#application .dw-progress-bar>span{border-radius:99px}
#application .sf-chart-tabs{background:#f2f4f7;border-radius:10px;padding:4px}
#application .sf-chart-tabs button{border-radius:8px!important}
#application .sf-chart-tabs button.active{background:#fff!important;color:var(--cl-accent)!important;box-shadow:0 1px 4px rgba(40,50,90,.1)}
/* Modal */
#modal{border-radius:20px!important;border:1px solid var(--cl-line)!important;box-shadow:0 24px 60px rgba(16,24,40,.18)!important}
/* Footer */
#application footer{color:#667085}
/* Dashboard layout: greeting, key figures, then the chart */
#application #main:has(>.cl-dash-head){display:flex;flex-direction:column;gap:20px}
#application #main:has(>.cl-dash-head)>.dashboard-weekly{display:contents}
#application #main:has(>.cl-dash-head)>.cl-dash-head{order:0}
#application #main:has(>.cl-dash-head)>.dashboard-weekly>.sf-focus-metrics{order:1;margin:0!important}
#application #main:has(>.cl-dash-head)>.sf-margin-chart{order:2;margin:0!important}
#application #main:has(>.cl-dash-head)>.dashboard-weekly>*:not(.sf-focus-metrics){order:3;margin-top:0!important}
#application #main:has(>.cl-dash-head)>footer,#application #main:has(>.cl-dash-head)>.app-footer{order:9}
.cl-dash-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.cl-dash-head p{margin:0;font-size:13px;color:#475467}.cl-dash-head h1{margin:4px 0 0;font-size:28px;letter-spacing:-.7px;color:#101828}
.cl-dash-actions{display:flex;gap:10px;flex-wrap:wrap}.cl-dash-actions .button{text-decoration:none}
/* Accounts group headers */
#application :is(.pa-group>summary,.pa-club-group>summary,details.pa-group-details>summary){border-radius:12px!important;background:#f8f9fc!important}
@media (max-width:760px){.cl-dash-head h1{font-size:23px}.cl-dash-actions{width:100%}.cl-dash-actions .button{flex:1;justify-content:center;text-align:center}}
/* Same colour rule everywhere: red = owed to you, green = you owe */
#application .dw-balance-card .dw-positive{color:#b42318!important}
#application .dw-balance-card .dw-negative{color:#067647!important}
#application .dw-balance-card{background:#fff!important;border:1px solid var(--cl-line)!important;border-radius:var(--cl-radius)!important;box-shadow:var(--cl-shadow)!important}
#application .statement-clean-directory td.empty{width:auto!important;display:table-cell;text-align:center;padding:24px 12px!important;color:#667085}
@media (max-width:760px){#application .statement-clean-directory tr:has(>td.empty){display:block}#application .statement-clean-directory td.empty{display:block!important;width:100%!important;box-sizing:border-box}}
/* Reset data */
.data-reset-lead{margin:0 0 12px;color:#344054}.data-reset-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.data-reset-item{display:flex;gap:12px;align-items:flex-start;border:1px solid #e8ebf2;border-radius:12px;padding:11px 13px;cursor:pointer}
.data-reset-item:has(input:checked){border-color:#f0a3a3;background:#fff8f8}.data-reset-item:has(input:disabled){opacity:.85}
.data-reset-item input{margin-top:3px}.data-reset-item b{font-weight:600;color:#101828}.data-reset-item em{font-style:normal;font-size:12px;color:#475467;background:#f2f4f7;border-radius:99px;padding:1px 8px;margin-left:4px}
.data-reset-item small{display:block;color:#667085;font-size:12.5px;margin-top:2px}.data-reset-note{margin:0 0 10px;color:#b54708;font-size:13px}
#application .button.danger-button,.button.danger-button{background:#d92d20!important;border-color:#d92d20!important;color:#fff!important}.button.danger-button:disabled{opacity:.45}
.text-button.danger{color:#b42318!important}
/* Delete contact */
.sfc-danger{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;border:1px solid #f6d3d3}
.sfc-danger h2{margin:0 0 4px;font-size:16px;color:#b42318}
.sfc-danger p{margin:0;color:#667085;font-size:13px}
.contact-delete-list{list-style:none;margin:6px 0 14px;padding:0;border:1px solid #eef0f5;border-radius:12px}
.contact-delete-list li{display:flex;justify-content:space-between;padding:9px 14px;font-size:14px}
.contact-delete-list li+li{border-top:1px solid #eef0f5}
@media (max-width:640px){.sfc-danger{flex-direction:column;align-items:stretch}}
/* Forms rendered inside a modal: no inner card (the dialog is already the card) */
#modal form.dash-panel{border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;padding:0!important;margin:0!important}
#modal .club-form .club-form-grid{gap:16px 18px!important;margin-top:6px}
#modal .club-form .club-form-grid label,#modal .club-form .club-form-grid .field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#475467}
#modal .club-form .club-optional{margin-top:18px;padding-top:14px!important;border-top:1px solid #eef0f5}
#modal .club-form .club-form-bottom{margin-top:18px}
/* ClubGG identities: country flags */
.personal-referral-dialog .referral-avatar.has-flag{width:44px;height:33px;margin:4px 0;border-radius:7px;background:#f4f6fb;padding:0;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(16,24,40,.08)}
.personal-referral-dialog .referral-avatar.has-flag .referral-flag{width:100%;height:100%;object-fit:cover;display:block}
.referral-country{display:flex;align-items:center;gap:10px}
.referral-country select{flex:1;min-width:0}
.referral-country-flag{flex:none;width:36px;height:27px;border-radius:5px;overflow:hidden;background:#f1f3f8;box-shadow:inset 0 0 0 1px rgba(16,24,40,.08)}
.referral-country-flag img{width:100%;height:100%;object-fit:cover;display:block}
.referral-flag-inline{width:18px;height:13.5px;border-radius:2px;object-fit:cover;vertical-align:-2px;margin-right:8px;box-shadow:0 0 0 1px rgba(16,24,40,.08)}
.referral-country select{font-size:13px!important;height:38px}
/* Club photo: progress ring with percentage */
#modal .club-photo-progress.club-photo-ring,.club-photo-progress.club-photo-ring{position:relative;width:64px;height:64px;margin:6px auto 14px;background:none!important;border-radius:50%;overflow:visible;--pct:0}
.club-photo-ring[hidden]{display:none!important}
.club-photo-ring svg{width:64px;height:64px;transform:rotate(-90deg);animation:club-ring-spin 1.4s linear infinite;transform-origin:50% 50%}
.club-photo-ring.is-complete svg{animation:none}
.club-photo-ring circle{fill:none;stroke-width:4.5}
.club-photo-ring .club-ring-track{stroke:#eeecfb}
.club-photo-ring .club-ring-bar{stroke:#6d5df0;stroke-linecap:round;stroke-dasharray:calc(var(--pct)*1) 100;transition:stroke-dasharray .25s linear}
.club-photo-ring.is-complete .club-ring-bar{stroke:#12b76a}
.club-photo-ring .club-ring-pct{position:absolute;inset:0;display:grid;place-items:center;font-size:14px;font-weight:700;color:#34415b;font-variant-numeric:tabular-nums}
.club-photo-ring>span{display:none}
#club-photo-status{text-align:center}
@keyframes club-ring-spin{from{transform:rotate(-90deg)}to{transform:rotate(270deg)}}
@media(prefers-reduced-motion:reduce){.club-photo-ring svg{animation:none}}
/* Currency picker */
.sf-currency-combo{position:relative;display:block}
.sf-currency-combo>input{width:100%;text-transform:uppercase}
.sf-currency-menu{position:fixed;z-index:1000;max-height:260px;box-sizing:border-box;overflow:auto;background:#fff;border:1px solid #e4e7f0;border-radius:12px;box-shadow:0 12px 32px rgba(16,24,40,.14);padding:6px}
.sf-currency-menu[hidden]{display:none}
.sf-currency-menu button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;text-align:left;padding:8px 10px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px;color:#344054}
.sf-currency-menu button b{width:38px;flex:none;font-weight:700;color:#1d2433;font-variant-numeric:tabular-nums}
.sf-currency-menu button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667085}
.sf-currency-menu button.is-active{background:#f1efff}.sf-currency-menu button.is-active b{color:#6d5df0}
.sf-currency-menu button.is-current span:after{content:" ✓";color:#6d5df0}
.sf-currency-menu p{margin:0;padding:10px;color:#98a2b3;font-size:13px}
/* Club photo: partial AI previews appear behind the ring, sharper at each step */
.club-photo-ring .club-ring-img{display:none}
#modal .club-photo-progress.club-photo-ring.has-image,.club-photo-progress.club-photo-ring.has-image{width:200px;height:200px;border-radius:22px;overflow:hidden;display:grid;place-items:center;box-shadow:0 6px 20px rgba(16,24,40,.12)}
.club-photo-ring.has-image .club-ring-img{display:block;position:absolute;inset:-12px;width:calc(100% + 24px);height:calc(100% + 24px);object-fit:cover;filter:blur(var(--blur,10px));transition:filter .8s ease;animation:club-ring-fade .6s ease}
.club-photo-ring.has-image svg{position:relative;z-index:1;width:64px;height:64px;background:rgba(255,255,255,.82);border-radius:50%;padding:0}
.club-photo-ring.has-image .club-ring-pct{z-index:2}
@keyframes club-ring-fade{from{opacity:0}to{opacity:1}}
.personal-referral-dialog .referral-flag-button{border:0;cursor:pointer;font:inherit;font-size:12px;font-weight:600;transition:box-shadow .15s,transform .15s}
.personal-referral-dialog .referral-flag-button:hover{box-shadow:0 0 0 2px #c9c2fb;transform:scale(1.04)}
.referral-flag-picker{margin:-4px 0 10px;padding:10px;border:1px solid #e8ebf3;border-radius:14px;background:#fafbfe}
.referral-flag-search{width:100%;box-sizing:border-box;height:36px;border:1px solid #e4e7f0;border-radius:10px;padding:0 12px;font:inherit;font-size:13px;background:#fff}
.referral-flag-search:focus{outline:none;border-color:#c9c2fb;box-shadow:0 0 0 3px rgba(109,93,240,.12)}
.referral-flag-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2px;max-height:210px;overflow:auto;margin-top:8px}
.referral-flag-options button{display:flex;align-items:center;gap:8px;border:0;background:none;border-radius:8px;padding:6px 8px;font:inherit;font-size:12px;color:#344054;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.referral-flag-options button[hidden]{display:none}
.referral-flag-options button:hover,.referral-flag-options button.is-current{background:#f1efff;color:#5a4bd6}
.referral-flag-options img{width:20px;height:15px;border-radius:3px;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(16,24,40,.08)}
.referral-flag-options .referral-flag-none{grid-column:1/-1;color:#b42318}
/* New club › Fill from screenshot */
.club-scan{margin:0 0 16px}
.club-scan-button{display:flex;align-items:center;gap:14px;width:100%;border:1.5px dashed #cfc8fb;background:#f8f7ff;border-radius:14px;padding:14px 16px;text-align:left;cursor:pointer;font:inherit;color:#5a4bd6;transition:background .15s,border-color .15s}
.club-scan-button:hover,.club-scan.is-over .club-scan-button{background:#f1efff;border-color:#6d5df0}
.club-scan-button span{display:flex;flex-direction:column;gap:2px}.club-scan-button strong{font-size:14px;font-weight:650}.club-scan-button small{font-size:12px;color:#8a84c9}
.club-scan.is-busy .club-scan-button{cursor:progress;opacity:.75}
.club-scan.is-busy .club-scan-button svg{animation:club-scan-pulse 1s ease-in-out infinite}
.club-scan-status{margin:8px 2px 0;font-size:12px;color:#667085;min-height:0}.club-scan-status:empty{display:none}
.club-scan.is-done .club-scan-status{color:#067647}.club-scan.is-error .club-scan-status{color:#b42318}
#club-settings-form input.club-scan-filled{background:#f1efff!important;transition:background 1.2s}
@keyframes club-scan-pulse{50%{opacity:.35}}
.club-scan-photo{display:flex;align-items:center;gap:8px;margin:8px 2px 0;font-size:12px;font-weight:500;color:#475467;cursor:pointer}
.club-scan-photo[hidden]{display:none}.club-scan-photo input{accent-color:#6d5df0;width:15px;height:15px;margin:0}
#modal .club-photo-progress.club-photo-ring.is-complete{display:none}
/* Dashboard header: profile name + calendar chip */
.cl-dash-head h1{margin:0!important}
.cl-cal-wrap{position:relative}
.cl-cal-chip{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e8ebf3;border-radius:16px;padding:7px 14px 7px 7px;cursor:pointer;font:inherit;color:#101828;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:box-shadow .15s,border-color .15s}
.cl-cal-chip:hover,.cl-cal-chip[aria-expanded="true"]{border-color:#d9d4fd;box-shadow:0 6px 18px rgba(109,93,240,.12)}
.cl-cal-tile{display:flex;flex-direction:column;align-items:center;width:44px;border-radius:11px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1px #eceaf9}
.cl-cal-tile em{display:block;width:100%;text-align:center;font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#7c6cf5,#5b4be0);padding:3px 0}
.cl-cal-tile b{font-size:19px;font-weight:700;line-height:1;padding:5px 0 6px;color:#1d2433;font-variant-numeric:tabular-nums}
.cl-cal-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}
.cl-cal-text strong{font-size:14px;font-weight:650}.cl-cal-text small{font-size:12px;color:#667085}
.cl-cal-caret{color:#98a2b3;margin-left:2px;transition:transform .2s}
.cl-cal-chip[aria-expanded="true"] .cl-cal-caret{transform:rotate(180deg)}
.cl-cal-pop{position:absolute;right:0;top:calc(100% + 10px);z-index:80;width:330px;background:#fff;border:1px solid #e8ebf3;border-radius:18px;box-shadow:0 18px 48px rgba(16,24,40,.16);padding:16px;animation:cl-cal-in .16s ease-out}
@keyframes cl-cal-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.cl-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.cl-cal-head strong{font-size:15px;font-weight:650;color:#101828}
.cl-cal-head button{width:30px;height:30px;border:0;border-radius:9px;background:#f4f6fb;color:#475467;font-size:18px;line-height:1;cursor:pointer}
.cl-cal-head button:hover{background:#f1efff;color:#6d5df0}
.cl-cal-grid{display:grid;grid-template-columns:26px repeat(7,1fr);gap:2px;align-items:center}
.cl-cal-dow,.cl-cal-wk{font-size:10.5px;font-weight:600;color:#98a2b3;text-align:center;padding:4px 0}
.cl-cal-wk{color:#b5b0e8;font-variant-numeric:tabular-nums}.cl-cal-wk.is-sel{color:#6d5df0}
.cl-cal-day{position:relative;height:34px;border:0;border-radius:10px;background:none;font:inherit;font-size:13px;color:#344054;cursor:pointer;font-variant-numeric:tabular-nums}
.cl-cal-day:hover{background:#f4f3ff}
.cl-cal-day.in-week{background:#f7f6ff}
.cl-cal-day.is-out{color:#c4cad6}
.cl-cal-day.is-today{color:#6d5df0;font-weight:700;box-shadow:inset 0 0 0 1.5px #c9c2fb}
.cl-cal-day.is-sel{background:#6d5df0;color:#fff;font-weight:700;box-shadow:0 4px 10px rgba(109,93,240,.3)}
.cl-cal-day i{position:absolute;left:50%;bottom:4px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#f59f00}
.cl-cal-day.is-sel i{background:#fff}
.cl-cal-detail{margin-top:12px;padding-top:12px;border-top:1px solid #f0f2f7}
.cl-cal-detail-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.cl-cal-detail-head strong{font-size:13.5px;color:#101828}.cl-cal-detail-head small{font-size:12px;color:#667085}
.cl-cal-detail p{margin:0;font-size:12.5px;color:#98a2b3}
.cl-cal-detail ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:130px;overflow:auto}
.cl-cal-detail li{display:flex;gap:10px;font-size:13px;color:#344054;background:#f8f9fc;border-radius:9px;padding:7px 10px}
.cl-cal-detail li span{flex:none;min-width:52px;font-size:11.5px;font-weight:600;color:#6d5df0}
.cl-cal-detail li.is-done{color:#98a2b3;text-decoration:line-through}
.cl-cal-foot{display:flex;justify-content:flex-end;margin-top:10px}
.cl-cal-foot button{border:0;background:none;color:#6d5df0;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 6px;border-radius:7px}
.cl-cal-foot button:hover{background:#f1efff}
@media (max-width:760px){.cl-dash-head{flex-wrap:nowrap}.cl-cal-text{display:none}.cl-cal-caret{display:none}.cl-cal-chip{padding:6px}.cl-cal-pop{width:min(330px,calc(100vw - 32px))}}
/* Simplified dashboard */
#application .ds-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.ds-metrics small.ds-up{color:#067647!important;font-weight:600}.ds-metrics small.ds-down{color:#b42318!important;font-weight:600}
#application .ds-chart{background:#fff;border:1px solid #e8ebf3;border-radius:18px;padding:20px 22px 14px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.ds-chart-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.ds-chart-head div>span{display:block;font-size:12.5px;color:#667085;margin-bottom:4px}
.ds-chart-head strong{font-size:24px;font-weight:700;letter-spacing:-.4px;color:#101828;font-variant-numeric:tabular-nums}.ds-chart-head strong.neg{color:#b42318}
.ds-chart-head a{font-size:12.5px;font-weight:600;color:#6d5df0;text-decoration:none;padding:6px 10px;border-radius:9px}.ds-chart-head a:hover{background:#f1efff}
.ds-chart-plot{height:150px}.ds-chart-plot svg{width:100%;height:100%;display:block}
.ds-chart-plot rect.pos{fill:#7c6cf5}.ds-chart-plot rect.neg{fill:#f97066}.ds-chart-plot rect:hover{opacity:.8}
.ds-chart-axis{display:flex;justify-content:space-between;font-size:11px;color:#98a2b3;margin-top:6px}
.ds-empty{margin:28px 0;text-align:center;color:#98a2b3;font-size:13px}
#application .ds-week{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e8ebf3;border-radius:16px;padding:14px 18px;text-decoration:none;color:#344054;font-size:13.5px;box-shadow:0 1px 2px rgba(16,24,40,.04);transition:border-color .15s,box-shadow .15s}
#application .ds-week:hover{border-color:#d9d4fd;box-shadow:0 6px 18px rgba(109,93,240,.1)}
.ds-week-dot{width:10px;height:10px;border-radius:50%;background:#f79009;box-shadow:0 0 0 4px #fef0c7;flex:none}
.ds-week.is-done .ds-week-dot{background:#12b76a;box-shadow:0 0 0 4px #d1fadf}
.ds-week-label{font-weight:650;color:#101828}.ds-week-status{color:#667085}.ds-week-status b{color:#b54708;font-weight:600}
.ds-week-go{margin-left:auto;font-weight:600;color:#6d5df0;white-space:nowrap}
@media(max-width:760px){#application .ds-metrics{grid-template-columns:1fr 1fr!important;gap:12px!important}#application .ds-metrics>.sf-focus-margin{grid-column:1/-1}#application .ds-week{flex-wrap:wrap}.ds-week-go{margin-left:0;width:100%}}
.ds-chart-plot{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:10px;height:150px}
.ds-zero{position:absolute;left:0;right:0;top:50%;border-top:1px dashed #e4e7f0}
.ds-col{position:relative;height:100%;cursor:default}
.ds-bar{position:absolute;left:12%;right:12%;border-radius:6px;background:linear-gradient(180deg,#8b7cf8,#6d5df0);transition:filter .15s}
.ds-bar.neg{background:linear-gradient(180deg,#f97066,#f04438)}
.ds-bar.is-empty{height:3px;background:#e9ecf3;border-radius:2px}
.ds-col:hover .ds-bar{filter:brightness(1.08)}
.ds-chart-head a{white-space:nowrap}
/* Clubs list (option B) */
#application .clubs-directory{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
#application .clubs-directory>.club-toolbar{background:#fff;border:1px solid #e8ebf3;border-radius:18px;padding:14px 16px;margin-bottom:14px}
.cll{background:#fff;border:1px solid #e8ebf3;border-radius:18px;overflow:visible;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.cll-head,.cll-row{display:grid;grid-template-columns:minmax(220px,2.2fr) minmax(120px,1fr) minmax(110px,1fr) 80px 110px 40px;align-items:center;gap:14px;padding:0 18px}
.cll-head{height:38px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#98a2b3;border-bottom:1px solid #eef0f5}
.cll-head span:nth-child(4),.cll-head span:nth-child(5){text-align:right}
.cll-section-head{display:flex;align-items:center;gap:10px;padding:9px 18px;background:#f7f6ff;border-bottom:1px solid #eeebfd;font-size:12.5px;color:#2d2a6e}
.cll-section-head b{font-weight:650}.cll-section-head>span:last-child{color:#7c78a8}
.cll-cur{font-size:11px;font-weight:700;color:#5a4bd6;background:#e9e5ff;border-radius:999px;padding:2px 8px}
.cll-row{min-height:62px;border-bottom:1px solid #f0f2f7;cursor:pointer;transition:background .12s}
.cll-section:last-child .cll-row:last-child{border-bottom:0;border-radius:0 0 18px 18px}
.cll-row:hover{background:#faf9ff}.cll-row.is-muted{opacity:.6}
.cll-club{display:flex;align-items:center;gap:12px;min-width:0}.cll-club>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.cll-club a{text-decoration:none;color:#101828}.cll-club b{font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.cll-club small{font-size:12px;color:#8a94a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cll-logo{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;overflow:hidden;font-size:12px;font-weight:700;color:hsl(var(--h,250) 50% 36%);background:hsl(var(--h,250) 75% 93%)}
.cll-logo img{width:100%;height:100%;object-fit:cover}
.cll-ids{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.cll-copy{border:0;background:#f4f6fb;border-radius:7px;padding:3px 7px;font:500 12px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:#344054;cursor:copy}
.cll-copy:hover{background:#ebe8ff;color:#5a4bd6}.cll-ref{font-size:11px;color:#667085;background:transparent;padding:1px 7px}
.cll-deal{display:flex;flex-direction:column;gap:2px}.cll-deal b{font-size:13.5px;font-weight:650;font-variant-numeric:tabular-nums;color:#1d2433}.cll-deal small{font-size:11.5px;color:#98a2b3}
.cll-none{color:#b0b7c4!important;font-weight:500!important}
.cll-num,.cll-margin{text-align:right;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;color:#1d2433;display:flex;flex-direction:column;align-items:flex-end}
.cll-num small,.cll-margin small{font-size:10.5px;font-weight:500;color:#98a2b3}
.cll-margin.pos{color:#067647}.cll-margin.neg{color:#b42318}
.cll-menu{position:relative;justify-self:end}.cll-menu summary{list-style:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#98a2b3;font-size:18px;cursor:pointer}
.cll-menu summary::-webkit-details-marker{display:none}.cll-menu summary:hover,.cll-menu[open] summary{background:#f1efff;color:#6d5df0}
.cll-menu>div{position:absolute;right:0;top:34px;z-index:30;min-width:170px;background:#fff;border:1px solid #e8ebf3;border-radius:12px;box-shadow:0 12px 32px rgba(16,24,40,.14);padding:6px;display:flex;flex-direction:column}
.cll-menu>div>*{border:0;background:none;text-align:left;font:inherit;font-size:13px;color:#344054;padding:8px 10px;border-radius:8px;cursor:pointer;text-decoration:none}
.cll-menu>div>*:hover{background:#f4f3ff;color:#5a4bd6}
.cll-empty{padding:28px;text-align:center;color:#98a2b3;margin:0}
#application .clubs-directory .club-list-foot{background:transparent;border:0;padding:10px 4px}
@media(max-width:760px){
 .cll-head{display:none}
 .cll-row{grid-template-columns:1fr auto auto;grid-template-areas:"club margin menu" "ids deal num";gap:8px 12px;padding:12px 14px}
 .cll-club{grid-area:club}.cll-margin{grid-area:margin}.cll-menu{grid-area:menu}.cll-ids{grid-area:ids;flex-direction:row;flex-wrap:wrap}.cll-deal{grid-area:deal;align-items:flex-end}.cll-num{grid-area:num}
}
#application .clubs-directory .cll{border:0;box-shadow:none;border-radius:0;border-top:1px solid #eef0f5}
