body{font-family:sans-serif;max-width:600px;margin:0 auto;padding:2rem;background-color:#b2d8f8;color:#444}@media(max-width:480px){body{padding:1rem}}h1,h2,h3{color:#df7bba}h1{background-color:#fff6d0;display:inline-block;border:2px dashed #df7bba;padding:.2rem .5rem}p{line-height:1.6}.profile-card{display:flex;align-items:center;gap:1rem}.skill-list{display:flex;gap:.5rem;flex-wrap:wrap}.skill-tag{background-color:#5be3cf;padding:.25rem .5rem;border-radius:4px}.icon{font-size:4rem}.info{margin:0;color:#39426b}img{box-shadow:4px 4px #fff;display:block;margin:1rem 0}a{color:#df7bba;font-weight:700;text-decoration:underline wavy}.plain-link{color:inherit}hr{border:none;border-top:3px dashed #df7bba;margin:1.5rem 0}.top-calendar{margin:.25rem 0 0}.top-calendar-title{margin:0 0 .35rem;font-size:1.25rem}.top-calendar-lead{margin:0 0 .85rem;font-size:.9rem;color:#39426b;line-height:1.55}.skills-heading{margin:1.25rem 0 .5rem;font-size:1.15rem}.calendar-section{margin-bottom:.5rem}.calendar-heading{margin:0 0 .5rem;font-size:1.05rem;font-weight:700}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;max-width:100%;font-size:.9rem;text-align:center}.calendar-dow{font-weight:700;color:#39426b;padding:.2rem 0}.calendar-cell{display:flex;align-items:center;justify-content:center;min-height:2rem;border-radius:4px;box-sizing:border-box}.calendar-cell--empty{min-height:2rem;pointer-events:none}.calendar-cell--muted{color:#888;background:#ffffff59}.calendar-cell--link{background-color:#fff6d0;border:2px dashed #df7bba;color:#df7bba;font-weight:700;text-decoration:none}.calendar-cell--link:hover{background-color:#ffe8f0}body:has(.album-page){max-width:min(100%,56rem)}.album-page__nav{margin-bottom:.75rem}.album-page__hero{margin:0 0 1.75rem}.album-page-heading{margin:0 0 .35rem;font-size:clamp(1.35rem,4vw,1.85rem);line-height:1.25}.album-page__meta{margin:0;font-size:.95rem;color:#39426b;font-weight:500}.album-page__empty{margin:0;padding:1.5rem 1.25rem;background:#ffffff80;border:2px dashed #c8d8ec;border-radius:8px;color:#39426b;line-height:1.65}.album-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:1.15rem}@media(min-width:540px){.album-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media(min-width:860px){.album-grid{grid-template-columns:repeat(3,1fr);gap:1.35rem}}.album-grid__item{margin:0;background:#fff9;border-radius:14px;padding:.55rem;border:2px solid rgba(223,123,186,.4);box-shadow:8px 8px #ffffffbf}.album-grid__trigger{all:unset;display:block;width:100%;cursor:zoom-in;border-radius:10px;overflow:hidden;box-sizing:border-box}.album-grid__trigger:focus-visible{outline:3px solid #df7bba;outline-offset:3px}.album-grid__frame{display:block;width:100%;border-radius:10px;overflow:hidden;background:#ffffff73}.album-grid__frame--boxed img{width:100%;height:100%;object-fit:contain;object-position:center;margin:0;border-radius:0;box-shadow:none;pointer-events:none;display:block}.album-grid__frame--natural img{width:100%;height:auto;margin:0;border-radius:0;box-shadow:none;pointer-events:none;display:block}.album-lightbox{padding:0;border:none;margin:0;max-width:none;max-height:none;width:100%;height:100%;background:transparent}.album-lightbox::backdrop{background:#192337d1;backdrop-filter:blur(3px)}.album-lightbox__shell{width:100%;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:min(5vw,1.75rem);box-sizing:border-box;cursor:zoom-out}.album-lightbox__figure{margin:0;position:relative;max-width:min(94vw,1200px);max-height:90vh;cursor:default}.album-lightbox__img{display:block;max-width:min(94vw,1200px);max-height:90vh;width:auto;height:auto;object-fit:contain;margin:0;border-radius:14px;box-shadow:0 16px 48px #0006}.album-lightbox__close{position:absolute;top:-.6rem;right:-.6rem;width:2.5rem;height:2.5rem;padding:0;border-radius:50%;border:2px dashed #df7bba;background:#fff6d0;color:#df7bba;font-size:1.5rem;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:4px 4px #ffffffe6;z-index:1}.album-lightbox__close:hover{background:#ffe8f0}.album-lightbox__close:focus-visible{outline:3px solid #5be3cf;outline-offset:2px}
