/* VIP journal: the month stays visible; daily detail opens on demand. */
.journal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.journal-heading h1{font-size:28px}.journal-heading p{font-size:14px;margin-top:8px}
.journal-month-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;margin-bottom:20px;border:1px solid var(--line);border-radius:12px;background:var(--raised,var(--white))}
.journal-pnl>span,.journal-day-total>span{display:block;font-size:13px;color:var(--muted)}
.journal-pnl>strong{display:block;font:700 clamp(28px,4vw,40px)/1.3 'Manrope',Arial,sans-serif;letter-spacing:-.035em;font-variant-numeric:tabular-nums;margin:6px 0}
.journal-pnl p{font-size:12px}.journal-month-stats{display:flex;gap:32px;flex-shrink:0}
.journal-month-stats>div{display:grid;gap:4px}.journal-month-stats strong{font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}.journal-month-stats span{font-size:12px;color:var(--muted)}
.journal-calendar{overflow:hidden;margin:0}.journal-calendar-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 20px}
.journal-calendar-toolbar h2{font-size:18px;flex:1}.journal-month-controls{display:flex;gap:4px;align-items:center}.journal-month-controls .text-button{min-width:44px;min-height:44px;font-size:14px}
.journal-account{flex-basis:100%}.journal-account select{max-width:280px;font-size:13px;min-height:44px}
.journal-weekdays,.journal-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.journal-weekdays{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}
.journal-weekdays span{text-align:center;font-size:12px;color:var(--muted);padding:10px 0}
:is(.journal-calendar,.admin-vip) .journal-calendar-day,.journal-calendar-pad{min-width:0;min-height:110px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:12px 8px}
:is(.journal-calendar,.admin-vip) .journal-calendar-day{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--ink);transition:background .15s ease}
.journal-calendar-day:nth-child(7n),.journal-calendar-pad:nth-child(7n){border-right:0}.journal-calendar-grid>:nth-last-child(-n+7){border-bottom:0}
.journal-calendar-pad{background:color-mix(in srgb,var(--paper) 60%,transparent)}
:is(.journal-calendar,.admin-vip) .journal-calendar-day:hover{background:color-mix(in srgb,var(--gold) 10%,transparent)}
:is(.journal-calendar,.admin-vip) .journal-calendar-day:focus-visible{outline:2px solid var(--gold);outline-offset:-3px;position:relative;z-index:1}
:is(.journal-calendar,.admin-vip) .journal-calendar-day.selected{box-shadow:inset 0 0 0 2px var(--gold);background:color-mix(in srgb,var(--gold) 10%,transparent)}
.journal-day-number{font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums;min-width:25px;text-align:center}
.journal-calendar-day[aria-current=date] .journal-day-number{border-radius:50%;background:var(--gold);color:var(--deep);font-weight:700}
.journal-day-pnl{font-size:13px;font-weight:600;line-height:1.5;font-variant-numeric:tabular-nums;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.journal-calendar-day:not(.has-activity) .journal-day-pnl{color:var(--dim,var(--muted));font-weight:400}
.journal-day-count{font-size:11px;line-height:1.3;color:var(--muted);min-height:14px}
:is(.journal-calendar,.admin-vip) .journal-calendar-day.positive,.journal-pnl>.positive,.journal-day-total>.positive,.journal-card .positive{color:#91d3ad}
:is(.journal-calendar,.admin-vip) .journal-calendar-day.negative,.journal-pnl>.negative,.journal-day-total>.negative,.journal-card .negative{color:#f0aaa0}
.journal-calendar-hint{padding:18px 4px;font-size:14px;text-align:center}.journal-data-note{margin:12px 0;font-size:12px;line-height:1.6;color:var(--muted)}
.journal-day-detail{margin-top:20px;padding:20px}.journal-day-heading{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.journal-day-heading h2{margin:6px 0 8px;font-size:20px}.journal-day-heading p:not(.eyebrow){font-size:13px}
.journal-day-total strong{display:block;font-size:24px;font-variant-numeric:tabular-nums}.journal-day-detail .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.journal-day-detail .journal-card{padding:16px!important}.journal-card h3{font-size:17px;margin:8px 0 12px;overflow-wrap:anywhere}
.journal-day-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}.journal-day-actions .button,.journal-day-actions .text-button{min-height:44px}
.journal-day-empty p{font-size:14px}.journal-imported{margin:20px 0 0}.journal-imported .panel{margin:0}.journal-imported .vip-advanced{margin-bottom:0}
@media(max-width:720px){
 .journal-heading{margin-bottom:16px}.journal-heading h1{font-size:24px}.journal-heading p{font-size:13px}
 .journal-heading .heading-actions{width:100%;justify-content:space-between}.journal-heading .button{min-height:44px}
 .journal-month-summary{padding:16px;gap:16px;flex-wrap:wrap;margin-bottom:16px}.journal-pnl>strong{font-size:30px}
 .journal-month-stats{gap:24px}.journal-month-stats strong{font-size:20px}
 .journal-calendar-toolbar{padding:12px;gap:8px}.journal-calendar-toolbar h2{font-size:16px}.journal-month-controls{gap:0}
 .journal-weekdays span{font-size:11px;padding:8px 0}:is(.journal-calendar,.admin-vip) .journal-calendar-day,.journal-calendar-pad{min-height:80px;padding:8px 2px;gap:5px}
 .journal-day-number{font-size:12px}.journal-day-pnl{font-size:11px}.journal-day-count{font-size:10px}
 .journal-day-detail{padding:16px}.journal-day-detail .journal-grid{grid-template-columns:minmax(0,1fr)}.journal-day-heading h2{font-size:18px}
}
@media(max-width:360px){.journal-day-pnl{font-size:10px}.journal-calendar-toolbar h2{flex-basis:100%}.journal-month-controls{margin-left:auto}.journal-pnl>strong{font-size:28px}}
@media(max-width:720px){:is(.journal-calendar,.admin-vip) .journal-calendar-day{padding-inline:0}.journal-day-pnl{font-family:Arial,sans-serif}}

/* Spacious journal layout within the shared workspace shell, including AJ's embedded journal. */
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading { gap:20px; align-items:center; margin-bottom:30px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading h1 { font:500 clamp(24px,2.4vw,30px)/1.25 var(--font,system-ui,sans-serif); letter-spacing:-.035em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading p { font-size:13px; margin-top:8px; color:var(--muted); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading .button { border-radius:10px; font-size:13px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-summary { padding:22px 0 28px; margin:0 0 24px; background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; gap:32px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-pnl>span { color:var(--muted); font-size:12px; font-weight:400; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-pnl>strong { font-size:36px; font-weight:500; letter-spacing:-.04em; margin-top:7px; line-height:1.3; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-pnl p { margin-top:8px; color:var(--muted); font-size:11px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-stats { gap:40px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-stats strong { font-size:23px; font-weight:500; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-stats span { font-size:12px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar { background:transparent; border:1px solid var(--line); border-radius:14px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-toolbar { padding:18px 22px; gap:14px; background:var(--white); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-toolbar h2 { font-size:16px; font-weight:500; letter-spacing:-.02em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls { gap:3px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls .text-button { min-width:38px; min-height:40px; color:var(--ink); font-size:13px; font-weight:400; border-radius:8px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls .text-button:hover { background:var(--sage); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls .text-button[data-offset=today] { padding-inline:13px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-account { flex:0 1 190px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-account select { min-height:40px; font-size:12px; border-color:var(--line); background:var(--paper); border-radius:8px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-weekdays { background:var(--white); border-color:var(--line); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-weekdays span { padding:10px 0; font-size:11px; font-weight:400; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) :is(.journal-calendar-day,.journal-calendar-pad) { min-height:112px; padding:12px; background:transparent; border-color:var(--line); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day { align-items:flex-start; gap:8px; border-radius:0; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day:hover { background:var(--white); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day:focus-visible { outline:2px solid var(--gold); outline-offset:-3px; position:relative; z-index:1; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day.selected { box-shadow:inset 0 0 0 1.5px var(--gold); background:var(--white); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-number { min-width:24px; font-size:12px; line-height:24px; text-align:center; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day[aria-current=date] .journal-day-number { color:var(--deep); background:var(--gold); font-weight:500; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-pnl { font-size:14px; font-weight:500; line-height:1.3; letter-spacing:-.02em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-count { font-size:10px; color:var(--muted); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-pad { background:var(--deep); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) :is(.journal-calendar-day.positive,.journal-pnl>.positive,.journal-day-total>.positive,.journal-card .positive) { color:var(--positive,#91d3ad); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) :is(.journal-calendar-day.negative,.journal-pnl>.negative,.journal-day-total>.negative,.journal-card .negative) { color:var(--negative,#f0aaa0); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-hint { padding:24px 4px; color:var(--muted); font-size:12px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-data-note { margin:16px 0 0; font-size:11px; line-height:1.8; color:var(--muted); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-detail { background:transparent; border:1px solid var(--line); padding:24px; border-radius:14px; margin-top:24px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-heading { margin-bottom:24px; gap:20px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-heading .eyebrow { font-size:11px; font-weight:400; letter-spacing:0; text-transform:none; color:var(--muted); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-heading h2 { font-size:20px; font-weight:500; margin:7px 0; letter-spacing:-.025em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-heading p:not(.eyebrow) { font-size:12px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-total span { font-size:11px; color:var(--muted); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-total strong { margin-top:6px; font-size:25px; font-weight:500; letter-spacing:-.03em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-detail .journal-card { background:var(--white); border:1px solid var(--line); border-radius:12px; padding:20px!important; min-height:230px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card .meta { margin-bottom:12px; font-size:11px; gap:12px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card h3 { font-size:16px; font-weight:500; margin:0 0 12px; letter-spacing:-.02em; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card p { font-size:12px; line-height:1.8; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card .card-actions { border-color:var(--line); padding-top:14px; margin-top:20px; gap:12px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card .card-actions .text-button { font-size:12px; font-weight:400; color:var(--ink); }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-card .card-actions span { font-size:10px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-empty p { font-size:13px; line-height:1.8; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-actions { border-top:1px solid var(--line); padding-top:20px; margin-top:24px; }
body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-actions .text-button { font-size:12px; font-weight:400; color:var(--muted); }
@media(max-width:1100px) {
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-account { flex-basis:100%; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day { padding:10px 7px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-pnl { font-size:12px; }
}
@media(max-width:720px) {
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading { align-items:flex-start; gap:16px; margin-bottom:20px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading h1 { font-size:25px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-heading .heading-actions { width:100%; justify-content:flex-start; gap:12px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-summary { gap:22px; flex-wrap:wrap; padding:14px 0 22px; margin-bottom:20px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-pnl>strong { font-size:31px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-stats { gap:32px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-stats strong { font-size:20px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-toolbar { padding:12px; gap:8px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-toolbar h2 { font-size:15px; flex-basis:100%; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls { margin-left:auto; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-month-controls .text-button { min-height:44px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-weekdays span { font-size:10px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) :is(.journal-calendar-day,.journal-calendar-pad) { min-height:84px; padding:8px 3px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day { align-items:center; gap:6px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-number { font-size:11px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-pnl { font-size:11px; letter-spacing:-.03em; font-family:var(--font,system-ui,sans-serif); }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-count { font-size:9px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-detail { padding:18px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-detail .journal-card { padding:16px!important; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-total strong { font-size:23px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-data-note { font-size:11px; }
}
@media(max-width:360px) {
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-pnl { font-size:10px; }
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-day-count { font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
 body.workspace-ui :is(.vip-page-journal,#admin-vip) .journal-calendar-day { transition:none; }
}
