.main-wrapper.fiche{justify-content:flex-start;padding-top:60px}
.main-wrapper.fiche .brand-header{margin-bottom:0}
.fiche-wrapper{width:100%;max-width:800px;margin:0 auto;padding:20px 0 60px}
.fiche-back{display:inline-flex;align-items:center;gap:6px;color:var(--accent-color);text-decoration:none;font-weight:500;font-size:.85rem;margin-bottom:18px;transition:gap .2s ease,color .2s ease}
.fiche-back:hover{gap:9px;color:var(--primary-color)}
.fiche-back svg{width:12px;height:12px;fill:currentColor}
.fiche-hero{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:30px;margin-bottom:16px;display:grid;grid-template-columns:minmax(130px,max-content) 1fr;align-items:center;gap:32px}
.hanzi-col{display:flex;align-items:center;justify-content:center;flex-shrink:0;min-width:0}
.hanzi-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:100%}
.hanzi-box{width:120px;height:130px;flex:0 1 auto;display:flex;align-items:center;justify-content:center;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 130 130' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='65' y1='0' x2='65' y2='130' stroke='%23d0d0d0' stroke-width='0.5'/%3E%3Cline x1='0' y1='65' x2='130' y2='65' stroke='%23d0d0d0' stroke-width='0.5'/%3E%3Cline x1='0' y1='0' x2='130' y2='130' stroke='%23d0d0d0' stroke-width='0.5'/%3E%3Cline x1='130' y1='0' x2='0' y2='130' stroke='%23d0d0d0' stroke-width='0.5'/%3E%3C/svg%3E");background-size:100% 100%;background-repeat:no-repeat;border:1px solid #e0e0e0;border-radius:8px;min-width:0}
.hanzi-box .hw-target{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.fr-as-hanzi{font-family:'Nunito',sans-serif;font-size:3rem;font-weight:700;color:var(--accent-color);text-align:center;padding:30px 20px;word-break:break-word}
.fiche-hero-info{min-width:0;flex:1}
.fiche-title{font-size:2rem;font-weight:700;color:var(--primary-color);line-height:1.2;margin-bottom:6px;display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}
.title-cn{font-family:'Noto Sans SC',sans-serif;font-size:1.3rem;font-weight:500;color:var(--secondary-text-color)}
.fiche-pinyin{font-family:'Noto Sans SC',sans-serif;color:#1a1a1a;font-size:1rem;margin-bottom:4px}
.fiche-cn-stack{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.fiche-cn-main{font-family:'Noto Sans SC',sans-serif;font-size:1.1rem;font-weight:500;color:var(--text-color);white-space:nowrap;letter-spacing:.05em}
.fiche-cn-stack .fiche-pinyin{margin-bottom:0}
.fiche-cn-trad{color:var(--secondary-text-color);font-weight:400}
.fiche-actions{display:flex;align-items:center;gap:10px;margin-top:16px}
.fiche-meta-row{display:flex;flex-direction:column;align-items:flex-start}
.fiche-hero:not(.hero-size-1) .fiche-meta-row{flex-direction:row;align-items:center;flex-wrap:wrap;justify-content:flex-start;gap:14px 24px}
.fiche-hero:not(.hero-size-1) .fiche-meta-row .fiche-actions{margin-top:0}
.fiche-btn{height:38px;border-radius:12px;padding:0 14px;font-weight:700;font-size:.8rem;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .1s ease;border:1px solid var(--border-color);background:#fff;color:var(--text-color)}
.fiche-btn:hover{background:var(--bg-color);border-color:rgba(192,57,43,.25)}
.fiche-btn:active{transform:translateY(1px)}
.fiche-btn svg{width:14px;height:14px;fill:currentColor}
.fiche-actions .audio-btn{width:auto;height:38px;border-radius:12px;padding:0 14px;gap:6px;background:var(--accent-color);border:1px solid var(--accent-color);color:#fff}
.fiche-actions .audio-btn:hover{background:#a93226;border-color:#a93226}
.audio-label{font-size:.8rem;font-weight:700;font-family:inherit}
.fiche-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:30px;display:flex;flex-direction:column}
.fiche-card .definitions-list{margin-top:0}
.fiche-card .example-box{margin-top:20px}
.fiche-card .usage-box{margin-top:20px}
.fiche-card .card-footer{margin-top:25px}
.usage-box{font-size:.9rem;color:var(--secondary-text-color);line-height:1.6;font-style:italic;border-left:2px solid var(--accent-color);padding-left:14px;margin-top:20px}
.fiche-hero.hero-size-3 .hanzi-box{width:110px;height:110px}
.fiche-hero.hero-size-many{flex-direction:column;gap:24px;align-items:stretch;text-align:center}
.fiche-hero.hero-size-many .fiche-hero-info{text-align:center}
.fiche-hero.hero-size-many .fiche-title{justify-content:center}
.fiche-hero.hero-size-many .fiche-cn-stack{align-items:center}
.fiche-hero.hero-size-many .hanzi-box{width:clamp(70px,22vw,100px);height:clamp(70px,22vw,100px)}
.fiche-hero.hero-size-many .hanzi-row{gap:10px}
@media(max-width:600px){.fiche-hero{flex-direction:column;gap:20px;padding:24px}
.hanzi-box{width:120px;height:120px}
.fiche-hero.hero-size-many .hanzi-box{width:clamp(64px,30vw,110px);height:clamp(64px,30vw,110px)}
.fiche-title{font-size:1.7rem}
.fiche-hero.hero-size-3 .hanzi-box{width:100px;height:100px}}
.fiche-hero.hero-size-2 .hanzi-box{width:115px;height:115px}
.fiche-hero.hero-size-3 .hanzi-box{width:100px;height:100px}
.fiche-hero.hero-size-4 .hanzi-box{width:90px;height:90px}
.fiche-hero.hero-size-5 .hanzi-box,.fiche-hero.hero-size-6 .hanzi-box{width:80px;height:80px}
.fiche-hero.hero-size-2 .hanzi-row,.fiche-hero.hero-size-3 .hanzi-row,.fiche-hero.hero-size-4 .hanzi-row,.fiche-hero.hero-size-5 .hanzi-row,.fiche-hero.hero-size-6 .hanzi-row{flex-wrap:wrap;max-width:none}
.fiche-cn-line{display:flex;align-items:baseline;gap:6px;flex-wrap:nowrap}
.fiche-cn-main{font-family:'Noto Sans SC',sans-serif;font-size:1.4rem;font-weight:500;color:var(--text-color);white-space:nowrap}
.fiche-cn-trad{font-size:1rem;color:var(--secondary-text-color)}
.fav-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:50%;transition:transform .2s ease,color .2s ease;color:var(--secondary-text-color);display:flex;align-items:center;justify-content:center}
.fav-btn:hover{transform:scale(1.2);color:var(--accent-color)}
.fav-btn.is-fav{color:var(--accent-color)}
.fav-btn svg{width:22px;height:22px;fill:currentColor}
.lightbox{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:1000;align-items:center;justify-content:center}
.lightbox-close{position:absolute;top:16px;right:20px;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1}
.lightbox-img{max-width:90vw;max-height:90vh;border-radius:8px}
@media(max-width:480px){.fiche-hero.hero-size-2 .hanzi-box{width:80px;height:80px}
.fiche-hero.hero-size-3 .hanzi-box{width:70px;height:70px}
.fiche-hero.hero-size-4 .hanzi-box{width:62px;height:62px}
.fiche-hero.hero-size-5 .hanzi-box,.fiche-hero.hero-size-6 .hanzi-box{width:54px;height:54px}}
.hsk-badge{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:3px 10px;border-radius:999px;background:#f0e8e7;color:var(--accent-color);margin-top:4px;margin-bottom:8px}
.definition-group{margin-bottom:8px}
.definition-group .example-box{margin-top:8px;margin-bottom:8px}
.definition-group + .definition-group{padding-top:8px;border-top:1px solid var(--border-color)}
.fiche-hero.has-image{position:relative;padding-right:180px}
.fiche-hero:is(.hero-size-4,.hero-size-5,.hero-size-6){grid-template-columns:1fr;justify-items:start;text-align:left}
.fiche-hero:is(.hero-size-4,.hero-size-5,.hero-size-6) .fiche-hero-info{width:100%}
.fiche-hero:is(.hero-size-4,.hero-size-5,.hero-size-6) .hanzi-col{justify-content:flex-start;margin:8px 0 12px}
.fiche-hero:is(.hero-size-4,.hero-size-5,.hero-size-6) .hanzi-row{justify-content:flex-start}
.fiche-image{position:absolute;top:30px;right:30px;text-align:center}
.fiche-image img{width:150px;height:150px;object-fit:cover;border-radius:var(--radius-md);cursor:zoom-in;display:block;margin:0 auto}
.fiche-image figcaption{position:absolute;top:100%;left:0;right:0;margin-top:6px;font-size:.62rem;color:var(--secondary-text-color);text-align:center;width:150px;white-space:normal}
@media(max-width:600px){.fiche-hero.has-image{padding-right:24px;grid-template-columns:minmax(100px,max-content) 1fr}.fiche-image{display:none}}