/* Shared by Next.js pages and the embedded portfolio. Keep visual primitives here. */
@font-face{font-family:'Verified Nunito';src:url('/fonts/nunito-latin-variable.ttf') format('truetype');font-weight:200 1000;font-style:normal;font-display:swap}
:root{
 --cp-font:'Verified Nunito',sans-serif;
 --cp-ink:#23372f;--cp-muted:#647368;--cp-line:#dddcd2;
 --cp-panel:#fffef9;--cp-canvas:#f6f4ed;--cp-chrome:#edf0e7;--cp-soft:#e5ebdf;
 --cp-accent:#123c32;--cp-hover:#edf1e8;--cp-selected:#dde7dc;--cp-selected-border:#b4c2b2;
 --cp-table-heading-size:14px;--cp-table-heading-height:40px;
}
.cp-choice.cp-choice{border:1px solid transparent;box-shadow:none;text-decoration:none;color:var(--cp-ink);transition:background .15s,border-color .15s}
.cp-choice.cp-choice:hover,.cp-choice.cp-choice.highlighted{background:var(--cp-hover);border-color:transparent;box-shadow:none;filter:none}
.cp-choice.cp-choice[aria-pressed=true]{background:var(--cp-selected);border-color:var(--cp-selected-border);color:var(--cp-accent);box-shadow:none}
.cp-choice.cp-choice:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}
.cp-table thead th,.cp-table-heading{
 height:var(--cp-table-heading-height);min-height:var(--cp-table-heading-height);padding:0 12px;
 color:var(--cp-muted);background:var(--cp-soft);font-family:var(--cp-font);
 font-size:var(--cp-table-heading-size);font-weight:700;line-height:20px;letter-spacing:normal;text-transform:none;
 border-top:0;border-bottom:1px solid var(--cp-line);
}
.cp-table tbody tr:hover{background:var(--cp-hover)}
@media(max-width:820px){.cp-table thead th{font-size:12px;padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){.cp-choice.cp-choice{transition:none}}
/* Compact dashboard surfaces, shared by home, dialogs and Tools. */
:root{--cp-card-heading:#f1f3ed;--cp-card-radius:10px;--cp-card-space:14px;--cp-card-heading-height:44px}
.cp-card-heading.cp-card-heading{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--cp-card-heading-height);margin:0;padding:9px var(--cp-card-space);background:var(--cp-card-heading);color:var(--cp-ink);border-bottom:1px solid var(--cp-line);font-size:14px;font-weight:650;line-height:22px}
.cp-card-heading.cp-card-heading h2{font-size:16px;line-height:24px;margin:0;font-weight:650}
.cp-card-surface.cp-card-surface{border:1px solid var(--cp-line);border-radius:var(--cp-card-radius);background:var(--cp-panel)}
