/* Portfolio journal: shared type and purple accents, quiet event surfaces. */
.activity-page{--ink:#292633;--muted:#777280;--line:#e7e3ed;--surface:#fff;--accent:#7b59b1;max-width:1060px;margin:0 auto;padding:44px 48px 96px;min-height:70vh;position:relative;color:var(--ink)}
.activity-page:before{content:"";position:absolute;z-index:0;pointer-events:none;top:0;left:0;right:0;height:420px;background:radial-gradient(ellipse at 80% 10%,rgba(151,113,207,.09),transparent 65%)}
.activity-page>*{position:relative}.activity-back{display:inline-flex;align-items:center;font-size:12px;color:var(--muted);transition:color .2s}
.activity-back:hover{color:var(--accent)}
.activity-heading{margin:45px 0 32px}.activity-eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.2em;font-weight:600;color:var(--accent);margin-bottom:17px}
.activity-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:#9b79cb;box-shadow:0 0 0 4px rgba(155,121,203,.1)}
.activity-heading h1{font-size:68px;font-weight:650;letter-spacing:-.055em;line-height:1.05;margin-bottom:17px}
.activity-heading>p:last-child{font-size:16px;color:var(--muted);line-height:1.7;max-width:490px}
.activity-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:17px 0;border-block:1px solid var(--line)}
.activity-filters{display:flex;gap:3px;flex-wrap:wrap;background:rgba(119,100,149,.05)!important;padding:4px;border-radius:12px;border:1px solid var(--line)!important;box-shadow:none!important}
.activity-filter{display:inline-flex;align-items:center;justify-content:center;padding:8px 17px;border-radius:8px;font-size:12px;color:var(--muted);min-height:34px;transition:background .18s,color .18s,box-shadow .18s}
.activity-filter:hover{color:var(--ink);background:rgba(119,100,149,.07)}
.activity-filter[aria-current=page]{background:var(--surface);color:var(--accent);font-weight:600;box-shadow:0 1px 4px rgba(40,20,60,.09)}
.activity-date{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}
.activity-date label{margin-right:4px}.activity-date input{border:1px solid var(--line);border-radius:9px;padding:9px 10px;background:var(--surface);color:var(--ink);font:inherit;min-height:36px}
.activity-date button{border:1px solid var(--line);border-radius:9px;padding:9px 12px;background:var(--surface);color:var(--accent);font-weight:600;min-height:36px;transition:background .2s}
.activity-date button:hover{background:#eee8f7}
.activity-meta{font-size:10px;letter-spacing:.03em;color:var(--muted);margin:17px 0 38px}
.activity-day{margin-bottom:38px}.activity-day h2{display:flex;align-items:center;gap:18px;font-size:13px;font-weight:600;margin:0 0 22px;letter-spacing:-.01em;color:var(--ink)}
.activity-day h2:after{content:"";height:1px;flex:1;background:var(--line)}
.activity-row{--event:#8764b5;--event-bg:#f0eaf8;display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px;position:relative;padding:0 0 22px;align-items:start}
.activity-time{font-size:11px;line-height:1.6;color:var(--muted);font-variant-numeric:tabular-nums}
.activity-marker{width:32px;height:32px;margin-top:0;border-radius:50%;background:var(--event-bg);color:var(--event);display:grid;place-items:center;font-size:0;z-index:1;border:1px solid color-mix(in srgb,var(--event) 16%,transparent)}
.activity-marker:before{content:"";width:17px;height:17px;background:currentColor;mask:var(--activity-icon) center/contain no-repeat;-webkit-mask:var(--activity-icon) center/contain no-repeat}
.activity-row:after{content:"";position:absolute;left:15px;top:36px;bottom:4px;width:1px;background:var(--line)}
.activity-row:last-child:after{display:none}
.activity-body{min-width:0;padding:2px 0 0}

.activity-label{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--event);margin-bottom:0;line-height:1.5}
.activity-row h3{font-size:15px;line-height:1.5;font-weight:550;letter-spacing:-.015em;overflow-wrap:anywhere}
.activity-row h3 a{transition:color .18s}.activity-row h3 a:hover{color:var(--accent)}
.activity-row h3 a:after{content:" ↗";font-size:12px;color:var(--muted);opacity:.65}
.activity-row p{font-size:11px;line-height:1.65;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}
.activity-row[data-kind=meeting]{--event:#527caa;--event-bg:#eaf1f8}
.activity-row[data-kind=health]{--event:#43816d;--event-bg:#e8f3ed}
.activity-row[data-kind=release]{--event:#a07832;--event-bg:#faf2df}
.activity-row[data-kind=release] .activity-body,.activity-row[data-kind=post] .activity-body{padding:20px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(120deg,color-mix(in srgb,var(--event-bg) 45%,var(--surface)),var(--surface))}
.activity-row[data-kind=release] h3,.activity-row[data-kind=post] h3{font-size:20px;letter-spacing:-.025em;font-weight:600}
.activity-empty,.activity-notice{padding:24px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:13px;color:var(--muted);margin:20px 0}
.activity-pagination{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--accent);margin-top:32px;background:transparent!important;border:0!important}
.activity-pagination a{padding:11px 18px;border:1px solid var(--line);background:var(--surface);border-radius:10px}
.activity-page a:focus-visible,.activity-page button:focus-visible,.activity-page input:focus-visible,.activity-burst summary:focus-visible{outline:2px solid #a180cc;outline-offset:4px}
.activity-burst{min-width:0}
.activity-entry-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:4px}
.activity-burst summary{cursor:pointer;display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;padding:4px 0 8px;list-style:none}
.activity-burst summary::-webkit-details-marker{display:none}
.activity-group-title{font-size:15px;font-weight:550;letter-spacing:-.015em}
.activity-expand{font-size:11px;color:var(--accent);margin-left:auto}
.activity-expand:after{content:" ⌄"}.activity-burst[open] .activity-expand:after{content:" ⌃"}
.activity-group-events{margin-top:10px;padding:12px 16px 0}
.activity-group-events .activity-row{padding-bottom:18px}
.activity-date-navigation{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:-16px 0 30px;font-size:12px;color:var(--accent)}
.activity-date-navigation>span{display:flex;gap:20px}.activity-all-days{font-weight:600}
.activity-pagination{align-items:center;margin:22px 0 30px}.activity-pagination>span{color:var(--muted);font-size:11px}
@media(prefers-color-scheme:dark){
.activity-page{--ink:#efedf3;--muted:#a5a0ae;--line:#39353e;--surface:#2d2a31;--accent:#c2a3eb}
.activity-page:before{background:radial-gradient(ellipse at 85% 5%,rgba(138,93,196,.12),transparent 65%)}
.activity-filter[aria-current=page]{background:#43354f;box-shadow:0 1px 5px #0002;color:#e1cdfa}.activity-filters{background:#211e25!important}.activity-row{--event:#bca0df;--event-bg:#372d43}
.activity-row[data-kind=meeting]{--event:#96b5da;--event-bg:#2c3745}.activity-row[data-kind=health]{--event:#8bc4ab;--event-bg:#293e36}.activity-row[data-kind=release]{--event:#dbc18a;--event-bg:#423a2b}
.activity-date input{color-scheme:dark}.activity-date button:hover{background:#43354f}
body>nav .nav-link,body>nav .mobile-menu a,body>nav a[href="/portfolio"]{color:#b7b7c0}body>nav .nav-link:hover,body>nav .mobile-menu a:hover{color:#e4d4ff}
}
@media(max-width:640px){
.activity-page{padding:28px 22px 64px}.activity-heading{margin:35px 0 26px}.activity-heading h1{font-size:52px}.activity-heading>p:last-child{font-size:14px;max-width:290px}.activity-eyebrow{font-size:9px}
.activity-toolbar{gap:16px}.activity-filters{width:100%;justify-content:space-between}.activity-filter{flex:1;padding:8px 12px}.activity-date{width:100%;justify-content:space-between}.activity-date input{flex:1;min-width:0;max-width:175px}.activity-meta{font-size:9px;margin-bottom:28px}
.activity-row{grid-template-columns:30px minmax(0,1fr);gap:7px 12px;padding-bottom:17px}.activity-time{font-size:10px}.activity-marker{grid-column:1;grid-row:1;width:30px;height:30px;margin-top:0;border-radius:50%}.activity-marker:before{width:15px;height:15px}
.activity-body{grid-column:2;padding:0}.activity-row:after{left:14px;top:34px;bottom:3px}.activity-row h3{font-size:14px}.activity-day h2{font-size:12px;margin-bottom:20px}.activity-day{margin-bottom:30px}.activity-label{font-size:8px}
.activity-group-events{padding:12px 10px 0}.activity-burst summary{gap:6px 12px}.activity-expand{margin-left:0}.activity-entry-meta{gap:4px 10px}.activity-pagination a{padding:10px}.activity-group-title{font-size:14px}.activity-row[data-kind=release] .activity-body,.activity-row[data-kind=post] .activity-body{padding:17px}.activity-row[data-kind=release] h3,.activity-row[data-kind=post] h3{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.activity-page *{transition:none!important}}

.activity-row[data-kind=worklog]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E")} 

.activity-row[data-kind=meeting]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%225%22%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M8%203v4m8-4v4M4%2011h16m-11%204h.01M13%2015h.01M9%2018h.01%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=commit]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M3%2012h5m8%200h5%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=pr]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%226%22%20cy%3D%225%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%226%22%20cy%3D%2219%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%2219%22%20r%3D%222%22%2F%3E%3Cpath%20d%3D%22M6%207v10m12%200V9a4%204%200%200%200-4-4h-2m3-3-3%203%203%203%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=review]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012s4-7%2010-7%2010%207%2010%207-4%207-10%207S2%2012%202%2012Z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=health]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20.8%204.6a5.5%205.5%200%200%200-7.8%200L12%205.7l-1.1-1.1a5.5%205.5%200%200%200-7.8%207.8L12%2021l8.8-8.6a5.5%205.5%200%200%200%200-7.8Z%22%2F%3E%3Cpath%20d%3D%22M4%2012h4l2-4%204%208%202-4h4%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=release]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m12%203%202.6%205.4%206%20.9-4.3%204.2%201%205.9-5.3-2.8-5.3%202.8%201-5.9L3.4%209.3l6-.9Z%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=post]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203H6a2%202%200%200%200-2%202v14a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V9Z%22%2F%3E%3Cpath%20d%3D%22M14%203v6h6M8%2013h8m-8%204h5%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=share]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2013a5%205%200%200%200%207%20.1l3-3a5%205%200%200%200-7-7l-2%202m3%206a5%205%200%200%200-7-.1l-3%203a5%205%200%200%200%207%207l2-2%22%2F%3E%3C%2Fsvg%3E")}

.activity-row[data-kind=jira]{--activity-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m7%2012%203%203%207-7%22%2F%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%225%22%2F%3E%3C%2Fsvg%3E")}
.activity-page:before{mask-image:linear-gradient(to right,transparent,#000 12%,#000 75%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 75%,transparent)}
