#cvApp{max-width:900px;margin:0 auto;padding:28px 20px 70px}#cvApp .cv-hero{text-align:center;margin-bottom:22px}#cvApp .cv-flags{font-size:1.8rem}#cvApp .cv-hero h1{font-size:2rem;margin:4px 0 8px}#cvApp .cv-hero p{color:#555;max-width:620px;margin:0 auto;font-size:.96rem}#cvApp .cv-controls{background:#fff;border:1px solid var(--line, #ececec);border-radius:16px;padding:16px 18px;margin-bottom:22px;box-shadow:0 6px 18px #0000000a}#cvApp .cv-filter{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;flex-wrap:wrap}#cvApp .cv-flabel{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#999;padding-top:7px;min-width:74px}#cvApp .cv-chips{display:flex;flex-wrap:wrap;gap:6px;flex:1}#cvApp .cv-chip{border:1px solid var(--line, #ddd);background:#fafafa;border-radius:999px;padding:6px 12px;font:inherit;font-size:.84rem;font-weight:600;color:#555;cursor:pointer}#cvApp .cv-chip:hover{border-color:var(--brand, #c0392b)}#cvApp .cv-chip.cv-on{background:var(--brand, #c0392b);border-color:var(--brand, #c0392b);color:#fff}#cvApp .cv-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line, #f0f0f0);padding-top:14px;margin-top:4px}#cvApp .cv-random{background:var(--brand, #c0392b);color:#fff;border:0;border-radius:999px;padding:11px 20px;font:inherit;font-weight:700;font-size:.95rem;cursor:pointer}#cvApp .cv-random:hover{opacity:.92}#cvApp .cv-toggle-ans{background:#fff;border:1px solid var(--line, #ddd);border-radius:999px;padding:9px 16px;font:inherit;font-size:.86rem;font-weight:600;color:#555;cursor:pointer}#cvApp .cv-toggle-ans[aria-pressed=true]{border-color:var(--brand, #c0392b);color:var(--brand, #c0392b)}#cvApp .cv-count{color:#999;font-size:.84rem;margin-left:auto}#cvApp .cv-spot{margin-bottom:26px}#cvApp .cv-spot-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-weight:700;color:var(--brand, #c0392b)}#cvApp .cv-spot-next{background:0 0;border:1px solid var(--line, #ddd);border-radius:999px;padding:6px 14px;font:inherit;font-size:.84rem;font-weight:600;color:#555;cursor:pointer}#cvApp .cv-spot-next:hover{border-color:var(--brand, #c0392b);color:var(--brand, #c0392b)}#cvApp .cv-spotcard{border-color:var(--brand, #c0392b);box-shadow:0 10px 26px #c0392b1f}#cvApp .cv-card{background:#fff;border:1px solid var(--line, #ececec);border-radius:16px;padding:16px 18px;margin-bottom:14px;box-shadow:0 6px 18px #0000000a}#cvApp .cv-meta{display:flex;align-items:center;gap:8px;margin-bottom:8px}#cvApp .cv-badge{font-size:.68rem;font-weight:800;border-radius:6px;padding:2px 7px;letter-spacing:.04em}#cvApp .cv-q{background:#e9eefb;color:#3b53a4}#cvApp .cv-a{background:#e7f6ec;color:#1e7d47}#cvApp .cv-f{background:#fdf1e6;color:#b5651d}#cvApp .cv-topic{font-size:.8rem;font-weight:700;color:#444}#cvApp .cv-level{font-size:.72rem;color:#999;text-transform:capitalize;margin-left:auto}#cvApp .cv-line{display:flex;align-items:flex-start;gap:10px}#cvApp .cv-question{padding-bottom:4px}#cvApp .cv-answer,#cvApp .cv-follow{padding:8px 0 0;border-top:1px dashed #eee;margin-top:8px}#cvApp .cv-texts{flex:1;display:flex;flex-direction:column;gap:1px}#cvApp .cv-th{font-size:1.12rem;font-weight:700;color:var(--ink, #1f2933);line-height:1.4}#cvApp .cv-phon{font-size:.9rem;color:#c0392b}#cvApp .cv-en{font-size:.92rem;color:#555}#cvApp .cv-lit{font-size:.85rem;color:#8a6d3b;font-style:italic}#cvApp .cv-lbtns{display:flex;gap:4px;flex:0 0 auto}#cvApp .cv-icon{background:0 0;border:1px solid var(--line, #eee);border-radius:8px;padding:5px 8px;font-size:.95rem;cursor:pointer;line-height:1}#cvApp .cv-icon:hover{border-color:var(--brand, #c0392b)}#cvApp .cv-save.cv-saved{border-color:#1e7d47;color:#1e7d47}#cvApp .cv-reveal{margin-top:10px;background:#faf3f2;border:1px solid #f0dcd9;color:var(--brand, #c0392b);border-radius:8px;padding:6px 12px;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer}#cvApp .cv-reveal:hover{background:#f6e7e5}#cvApp.cv-hide-th .cv-th,#cvApp.cv-hide-phon .cv-phon,#cvApp.cv-hide-en .cv-en,#cvApp.cv-hide-lit .cv-lit{display:none}#cvApp .cv-empty{text-align:center;color:#999;padding:30px}@media (max-width:600px){#cvApp .cv-flabel{min-width:100%;padding-top:0}#cvApp .cv-level{margin-left:0}}