/* GFunnel - a person's Experience, Education and Skills
   (inc/gf_person_resume.inc.php). Drawn in two places: the owner's dashboard
   card and the public person page. Tokens only; dark is the platform's .dark
   class, never the operating system's colour scheme. */
.gfres {
    --gfres-ink: #0f1f3d;
    --gfres-muted: #6b7688;
    --gfres-line: #e8ebf1;
    --gfres-tint: #f5f7fa;
    --gfres-card: #ffffff;
    --gfres-accent: #F97316;
    --gfres-accent-hover: #EA6407;
    --gfres-accent-soft: rgba(249, 115, 22, .10);
    --gfres-on-accent: #ffffff;
    color: var(--gfres-ink);
}
.dark .gfres {
    --gfres-ink: #e7ecf5;
    --gfres-muted: #9aa6ba;
    --gfres-line: #26324a;
    --gfres-tint: #172238;
    --gfres-card: #111a2c;
}

.gfres-list { list-style: none; margin: 0; padding: 0; }
.gfres-item { display: flex; gap: 12px; padding: 14px 0; border-top: 1px solid var(--gfres-line); }
.gfres-item:first-child { border-top: 0; padding-top: 0; }
.gfres-mark {
    flex: none; width: 40px; height: 40px; border-radius: 10px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--gfres-tint); color: var(--gfres-muted);
}
.gfres-main { min-width: 0; flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; }
.gfres-title { font-size: 15px; font-weight: 700; color: var(--gfres-ink); }
.gfres-sub { font-size: 14px; color: var(--gfres-ink); }
.gfres-meta { font-size: 13px; color: var(--gfres-muted); }
.gfres-desc { margin: 6px 0 0; font-size: 14px; line-height: 1.55; color: var(--gfres-muted); white-space: normal; }
.gfres-empty { margin: 0 0 10px; font-size: 14px; color: var(--gfres-muted); }
.gfres-cap { margin: 8px 0 0; font-size: 12px; color: var(--gfres-muted); }

.gfres-skills { list-style: none; margin: 0 0 10px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.gfres-skill {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px; border-radius: 999px;
    background: var(--gfres-accent-soft); color: var(--gfres-ink);
    font-size: 13px; font-weight: 600;
}
.gfres-skill .gfres-del { display: inline; }
.gfres-skill .gfres-btn-del { padding: 0 2px; border: 0; background: none; font-size: 12px; }

.gfres-edit, .gfres-add { margin-top: 8px; }
.gfres-edit > summary, .gfres-add > summary {
    cursor: pointer; font-size: 13px; font-weight: 600; color: var(--gfres-accent-hover);
    list-style: none;
}
.gfres-edit > summary::-webkit-details-marker, .gfres-add > summary::-webkit-details-marker { display: none; }
.gfres-add { padding-top: 10px; border-top: 1px dashed var(--gfres-line); }

.gfres-form { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.gfres-form label { display: flex; flex-direction: column; gap: 4px; font-size: 12px; font-weight: 600; color: var(--gfres-muted); }
.gfres-form input[type="text"], .gfres-form input[type="month"], .gfres-form input[type="number"], .gfres-form textarea,
.gfres-skill-add input[type="text"] {
    width: 100%; padding: 8px 10px; font: inherit; font-size: 14px; font-weight: 400;
    color: var(--gfres-ink); background: var(--gfres-card);
    border: 1px solid var(--gfres-line); border-radius: 8px;
}
.gfres-form label.gfres-check { flex-direction: row; align-items: center; gap: 8px; font-weight: 500; }
.gfres-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.gfres-skill-add { display: flex; gap: 8px; }

.gfres-btn {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 7px 14px; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer;
    border: 1px solid var(--gfres-line); background: var(--gfres-card); color: var(--gfres-ink);
}
.gfres-btn-solid { background: var(--gfres-accent); border-color: var(--gfres-accent); color: var(--gfres-on-accent); align-self: flex-start; }
.gfres-btn-solid:hover { background: var(--gfres-accent-hover); }
.gfres-btn-del { color: var(--gfres-muted); }
.gfres-del { margin-top: 8px; }

@media (max-width: 520px) { .gfres-row2 { grid-template-columns: 1fr; } }
