*{box-sizing:border-box}h1,h2,h3,h4,h5,h6,p,li,dt,dd,pre{font-family:var(--font-family);font-weight:400;margin:0}ul,ol,dl{margin:0;padding:0}ul,ol{list-style-type:none;padding:0 var(--indent)}li:before{position:absolute;margin-left:calc(-1 * var(--indent));content:"▪"}.indent{padding:0 0 0 var(--indent)}li>button{margin:calc(-.5 * var(--padding)) 0}pre{white-space:pre-wrap}a{color:currentColor;text-decoration:none}a:hover{text-decoration:underline}button[disabled]{opacity:.5}.box{display:flex}.box.column{flex-direction:column}.box.wrap{flex-wrap:wrap}.xbox{outline:solid 1px #c006}.box.items-left{justify-content:flex-start}.box.column.items-left{align-items:flex-start}.box.items-center{justify-content:center}.box.column.items-center{align-items:center}.box.items-right{justify-content:flex-end}.box.column.items-right{align-items:flex-end}.box.items-top{align-items:flex-start}.box.column.items-top{justify-content:flex-start}.box.items-middle{align-items:center}.box.column.items-middle{justify-content:center}.box.items-bottom{align-items:flex-end}.box.column.items-bottom{justify-content:flex-end}.box.items-between{justify-content:space-between}.box.items-around{justify-content:space-around}.box>.fill{flex-basis:100%;align-self:stretch}.box>.fit{flex-grow:1;align-self:stretch}.box:not(.column)>.fit-width,.box.column>.fit-height{flex-grow:1}.box:not(.column)>.fit-height,.box.column>.fit-width{align-self:stretch}.box>.top{align-self:flex-start}.box>.middle{align-self:center}.box>.bottom{align-self:flex-end}.box>.left{margin-right:auto}.box.column>.left{align-self:flex-start;margin-right:unset}.box>.right{margin-left:auto}.box.column>.right{align-self:flex-end;margin-left:unset}.box>.center{margin-left:auto;margin-right:auto}.box.column>.center{align-self:center;margin-left:unset;margin-right:unset}.box.gap{gap:var(--gap)}.pad{padding:var(--padding)}.clickable{font-weight:700;color:var(--clickable-color);background-color:var(--clickable-background-color);border:none;border-radius:var(--clickable-border-radius);box-shadow:var(--shadow-small);padding:var(--clickable-padding);transition:all .1s ease-in-out}.clickable:active{box-shadow:var(--shadow-medium)}.clickable:hover{outline:var(--outline-hover)}.clickable:focus{outline:var(--outline-focus);z-index:1}.clickable.primary{color:var(--primary-color-alt);background-color:var(--primary-color)}.clickable.secondary{color:var(--secondary-color-alt);background-color:var(--secondary-color)}.clickable.info{color:var(--info-color-alt);background-color:var(--info-color)}.clickable.success{color:var(--success-color-alt);background-color:var(--success-color)}.clickable.warning{color:var(--warning-color-alt);background-color:var(--warning-color)}.clickable.danger{color:var(--danger-color-alt);background-color:var(--danger-color)}button,input,textarea,select{font-size:1rem;padding:var(--text-padding)}.text{padding:var(--text-padding)}.text-right{text-align:right}.text-center{text-align:center}.text.primary{color:var(--primary-color)}.text.secondary{color:var(--secondary-color)}.text.info{color:var(--info-color)}.text.success{color:var(--success-color)}.text.warning{color:var(--warning-color)}.text.danger{color:var(--danger-color)}.small{font-size:.85em}.no-wrap{white-space:nowrap}.input{color:var(--input-color);background-color:var(--input-background-color);border:none;border-radius:var(--input-border-radius);padding:var(--input-padding)}.input:focus,.control:focus{outline:var(--outline-focus)}label:focus-within,label:active{border:none;border-radius:var(--input-border-radius);outline:var(--outline-focus)}label:focus-within *:focus{outline:none!important}@media print{.editable:hover:before{outline:none!important}button,.no-print{display:none!important}}.cv{display:flex;flex-direction:column;gap:var(--cv-section-gap);--cv-border: solid 2px var(--primary-color-light);--cv-border-radius: calc(4 * var(--border-radius));--cv-section-gap: var(--gap);--primary-color: hsl(var(--primary-h), var(--primary-s), 20%)}.cv .section-primary,.cv .section-secondary{-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:calc(3 * var(--padding))}.cv .section-primary{background-color:hsl(var(--primary-h),var(--primary-s),var(--primary-l));color:hsl(0,0%,var(--primary-lc),.75);--primary-color: hsl(var(--primary-h), var(--primary-s), var(--primary-l));--primary-color-alt: hsl(0, 0%, var(--primary-lc));--primary-color-light: hsl(var(--primary-h), var(--primary-s), 95%);--input-color: hsl(0, 0%, var(--primary-lc));--input-background-color: hsl(0, 0%, var(--primary-lc), .2);--editable-background-color: hsl(0, 0%, calc(100% - var(--primary-lc)), .2)}.cv .section-primary *{--primary-color: var(--primary-color-alt)}.cv .section-secondary{background-image:linear-gradient(180deg,var(--primary-color-light) 0,var(--background-color) 40rem)}.cv>header,.cv>section{position:relative;display:flex;flex-direction:column;gap:var(--gap);width:100%;min-height:0;min-width:0;padding:calc(3 * var(--padding) - var(--cv-section-gap))}.cv>header,.cv>header:before,.cv>section,.cv>section:before{border-radius:var(--cv-border-radius)}.cv>section>.title{text-transform:uppercase}.cv :empty:not([contenteditable],a-icon){display:none}.cv .person{align-items:baseline}.cv .person .name{color:var(--primary-color)}.cv .person aside{margin-left:auto;display:flex;flex-direction:column;align-items:end;gap:var(--gap)}.cv .person .name,.cv .person .contact{width:100%}.cv .person .address,.cv .person .contact{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:end}.cv .person .address-locality:not(:empty):after{content:", ";display:inline-block;width:var(--gap)}.cv .person .email-address:not(:empty)+.phone-number{margin-left:var(--gap)}.cv .summary{align-self:end;justify-content:end}.cv .summary .description{color:var(--primary-color)}.cv .skills .sets{display:flex;flex-direction:column;gap:var(--gap)}.cv .skills .sets .list-toolbar{grid-column:1}.cv .skill-set{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:baseline;margin:0;gap:var(--gap)}.cv .skill-set .title,.cv .skill-set .items{margin:0;padding:var(--padding) 0 0}.cv .skill-set .title{min-width:4rem;text-transform:uppercase;color:var(--primary-color)}.cv .skill-set .items{flex-grow:1;font-family:var(--font-familt-alt);font-weight:700;color:var(--primary-color)}.cv .jobs{display:flex;flex-direction:column;gap:var(--gap)}.cv .job{break-inside:avoid;page-break-inside:avoid;display:flex;flex-direction:column;gap:var(--gap)}.cv .job .header{display:flex;flex-direction:column;gap:var(--gap)}.cv .job .status{display:inline-flex;font-size:small}.cv .job .status .year-started:not(:empty):after{content:", ";display:inline-block;width:var(--gap)}.cv .job .title-company{display:flex;justify-content:space-between;gap:var(--gap);flex-wrap:wrap;color:var(--primary-color)}.cv .job .title{font-weight:700}.cv .job>.detail{display:flex;flex-direction:column;gap:var(--gap)}.cv .job:not(:last-child){margin-bottom:calc(2 * var(--unit))}.cv .job .responsibilities{display:flex;flex-direction:column;gap:var(--gap)}.cv .job .tools{font-weight:700;font-family:var(--font-familt-alt);margin-left:var(--indent)}.cv .qualification{break-inside:avoid;page-break-inside:avoid;display:flex;flex-direction:column;gap:var(--gap);padding-bottom:var(--gap)}.cv .qualification .detail{display:flex;align-items:baseline;flex-wrap:wrap}.cv .qualification .title-and-name{flex:1 1 12rem;display:flex;align-items:baseline;gap:var(--gap)}.cv .qualification .name,.cv .qualification .year-started,.cv .qualification .status{font-size:small}.cv .qualification .year-status{margin-left:auto;display:flex;align-items:baseline;gap:var(--gap)}.cv .qualification .title{flex:1;font-weight:700;color:var(--primary-color)}.cv .qualification .name{white-space:nowrap}.cv .qualification .year-started{margin-left:auto}.cv .qualification .year-started:not(:empty)~.status:not(:empty):before{content:"-";padding-right:var(--gap)}.cv .qualification .institution{margin-left:var(--indent)}.cv .publication{break-inside:avoid;page-break-inside:avoid;display:flex;flex-direction:column;gap:var(--gap);padding-bottom:var(--gap)}.cv .publication .detail{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--gap)}.cv .publication .title{flex:1 1 12rem;font-weight:700;color:var(--primary-color)}.cv .publication .citation,.cv .publication .year,.cv .publication .status{font-size:small}.cv .publication .citation{flex:1 1 100%;font-style:italic}.cv .publication .year-status{margin-left:auto;display:flex;align-items:baseline;gap:var(--gap)}.cv .publication .year{margin-left:auto}.cv .publication .venue{margin-left:var(--indent)}.cv .summary:after{content:"";border-bottom:var(--cv-border);transform:translateY(calc(2.5 * var(--padding)));z-index:-1}.cv .education:after,.cv .publications:after{content:"";position:absolute;inset:0 calc(2 * var(--padding)) auto;border-bottom:var(--cv-border);transform:translateY(calc(-.5 * var(--padding)));z-index:-1}@media (min-width: 640px){.cv.columns .person{border-radius:var(--cv-border-radius) var(--cv-border-radius) var(--border-radius) var(--cv-border-radius)}.cv.columns .summary{border-radius:var(--cv-border-radius) var(--cv-border-radius) var(--cv-border-radius) var(--border-radius)}.cv.columns .skills,.cv.columns .publications{border-radius:var(--cv-border-radius) var(--border-radius) var(--border-radius) var(--cv-border-radius)}.cv.columns .education{border-radius:var(--cv-border-radius) var(--border-radius) var(--cv-border-radius) var(--cv-border-radius)}.cv.columns .experience{border-radius:var(--border-radius) var(--cv-border-radius) var(--cv-border-radius) var(--cv-border-radius)}.cv.columns{display:grid;grid-template-columns:minmax(15rem,37.5%) auto;grid-template-rows:max-content max-content max-content max-content 1fr}.cv.columns .summary:after{border:none}.cv.columns .skills{text-align:right;grid-column:1;grid-row:2}.cv.columns .skill-set .title{text-align:right}.cv.columns .skills .sets .list-toolbar{grid-column:2}.cv.columns .experience{grid-column:2;grid-row:2 / 6}.cv.columns .publications{text-align:right;grid-column:1;grid-row:3}.cv.columns .publication .title{flex:1 1 100%}.cv.columns .education{text-align:right;grid-column:1;grid-row:4}.cv.columns .qualification .detail,.cv.columns .qualification .title-and-name{justify-content:end;flex-wrap:wrap}.cv.columns .qualification .title{flex:1 1 100%}}.cv .skills{container-type:inline-size;container-name:skill-sets}.cv .experience{container-type:inline-size;container-name:experience}@container experience (max-width: 450px){.cv .job .title-company{flex-direction:column;justify-content:center}}:root{--editable-padding: calc(.5 * var(--unit));--editable-background-color: #fff}.editable,[contentEditable],[list]{position:relative;outline:none;min-width:1em;cursor:default}.editable:hover:before{z-index:2;outline:dashed var(--focus-outline-width) var(--lowlight-more)}.editable:focus-within:not(:has(.editable:focus-within)):before{outline:dashed var(--focus-outline-width) var(--lowlight)}.editable:focus:not(:has(.editable:focus-within)):before{z-index:1;outline:dashed var(--focus-outline-width) var(--primary-color)}.current [bind]{background-color:var(--input-background-color);color:var(--input-color)}.current [bind]:focus{background-color:transparent}.current [container] [bind]{background-color:unset;color:unset}.current,[contentEditable]:focus,[list]:focus{z-index:1}[contentEditable]:focus:before,[list]:focus:before{z-index:-1;outline:solid var(--focus-outline-width) var(--focus-outline-color);background-color:var(--editable-background-color)}.editable:before,[contentEditable]:before,[list]:before{content:"";position:absolute;inset:0;touch-action:none;pointer-events:none;border-radius:var(--border-radius);padding:calc(.25 * var(--editable-padding));margin:calc(-.25 * var(--editable-padding))}[contentEditable]:before,[list]:before{padding:calc(.75 * var(--editable-padding));margin:calc(-.75 * var(--editable-padding))}span[bind]{display:inline-block}[bind]:not([contentEditable]):empty{display:none}[contentEditable]:empty:after{content:var(--content, " ");font-size:.667em;font-weight:400;inset:auto}[container]:not(.edit) .edit-only{display:none}[list]{min-height:1rem}[list],[list-item],.dragging{position:relative}.dragging:before{background-color:var(--background-color);box-shadow:var(--shadow-medium);z-index:-1}.dragging,.dragging:before{pointer-events:none;touch-action:none}.list-toolbar{display:flex;align-items:start;justify-content:end;position:sticky;z-index:1;bottom:1rem}.list-toolbar button.remove{margin-right:auto}.list-item-grip,.list-item-remove{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;position:absolute;width:var(--tool-size);inset:calc(.25 * var(--padding)) auto;cursor:pointer}.notification .list-toolbar,.notification .list-item-grip,.notification .list-item-remove{display:none}.list-item-grip{right:calc(-1 * (var(--tool-size) + .75 * var(--padding)))}.list-item-remove{left:calc(-1 * (var(--tool-size) + .75 * var(--padding)))}.list-toolbar,.list-item-grip,.list-item-remove{opacity:0}.list-item-grip{touch-action:none;-webkit-user-select:none;user-select:none}.current .list-toolbar,.current [list-item]:focus-within .list-item-grip,.current [list-item]:focus-within .list-item-remove{opacity:1}.current [list] .list-item-grip{opacity:0}.nav{margin:1em var(--page-margin) 3em}.nav a{text-align:center;width:2.2rem;aspect-ratio:1 / 1;border-radius:50%}a-color-select{--border-radius: 50%;border:solid var(--background-color) 2px}
