*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--y1:#fff1b8;--y2:#fff7c2;--y3:#fff4a3;--y4:#fff1b8;--y5:#fff7c2;--c0:#0f1117;--c1:#181c27;--c2:#1e2333;--c3:#252d40;--c4:#2e384f;--c5:#3d4d6b;--t0:#d9dee8;--t1:#9aa3b8;--t2:#5c6680;--acc:#4f8ef7;--acc2:#2563eb;--grn:#34c97a;--yel:#f5c842;--red:#ef4444;--blue:#d2f7ff;--orang:#fdc17f;--brown:#8f5519;--r:10px;--r2:8px;--r3:14px;--fs:14px;--mono:monospace;--sans:system-ui,sans-serif;--trans:.18s cubic-bezier(.4,0,.2,1);--sidebar-w:360px;--sidebar-tab-w:38px}html{font-size:var(--fs);scroll-behavior:smooth;height:100%}body{color:var(--t0);font-family:var(--sans);background:#fff6ee;flex-direction:column;min-height:100%;line-height:1.5;display:flex;overflow-x:hidden}code{font-family:var(--mono);color:var(--y2);opacity:.5}p{margin-bottom:1.5em}a{color:var(--acc);text-decoration:none}b,strong{color:var(--brown)}ul{margin-left:1em;list-style:square}ul li::marker{color:var(--orang)}hr{background:#f1f1f1;border:none;height:1px;margin:2rem 0}.hide{display:none}.header-banner{color:#fff;text-align:center;background:#fdc17f;border-radius:8px;width:100%;height:250px;margin-top:20px;font-size:4rem}.header-banner div{color:#fff;opacity:.85;margin-top:40px;padding:0 20px;font-size:1rem}@media (width<=900px){.header-banner{height:150px;margin-top:40px;line-height:1.5}.header-banner div{margin-top:20px}}.header-banner h1{margin-top:80px;line-height:.5}@media (width<=900px){.header-banner h1{margin:40px 0 20px;font-size:3rem}}.menu-top ul{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 40px;list-style:none;display:flex}@media (width<=900px){.menu-top ul{gap:10px 20px}}.menu-top ul li a{color:var(--brown)}.app{flex-direction:column;flex:1;width:100%;max-width:980px;margin:0 auto;padding:10px 12px 24px;display:flex}@media (width<=900px){.app{padding:60px 12px 24px}}.shadowing{align-items:flex-start;gap:20px;display:flex}@media (width<=900px){.shadowing{display:block}}.shadowing-card{color:#222;background:#fff;border-radius:8px;margin-top:20px;padding:20px;font-size:1.25rem}.shadowing-card h2{margin-bottom:20px}.bg-blue{background:var(--blue)}@media (width<=900px){.shadowing-card{font-size:1.15rem}}.shadowing-definition{width:45%}.shadowing-method{width:55%}@media (width<=900px){.shadowing-definition,.shadowing-method{width:100%}}.shadowing-exercice-title{margin-bottom:10px;font-size:1.4rem}.shadowing-exercice-metadata{font-size:.9rem}.shadowing-exercice-badge{background:var(--blue);width:fit-content;color:var(--acc);border-radius:4px;margin:10px 0;padding:3px 6px}.badge-container{align-items:center;gap:10px;margin-bottom:10px;display:flex}@media (width<=900px){.badge-container{display:block}}.shadowing-exercice-source{background:var(--blue);width:fit-content;color:var(--acc);border-radius:4px;padding:3px 6px}.shadowing-exercice-comment{background:var(--acc);color:#fff;cursor:pointer;border:0;border-radius:4px;margin-top:20px;padding:10px;font-size:.9rem;font-weight:700}.shadowing-exercice-top{justify-content:space-between;display:flex}@media (width<=900px){.shadowing-exercice-top{display:block}}.shadowing-exercice-top h3{color:var(--acc);margin-top:25px}.bg-orang{background:#feebd7}.hdr{text-align:center;padding:20px 0 10px}.hdr-logo{letter-spacing:-.02em;color:var(--orang);font-size:2.8rem;font-weight:600}@media (width<=380px){.hdr-logo{margin-top:20px;font-size:2rem}}.hdr-logo span{color:var(--acc);opacity:.4}.layout{min-height:calc(100vh - 90px);display:block;position:relative}.main-content{width:100%;min-width:0}.tuto-code{color:var(--y3);background:var(--c0);border-radius:4px;padding:20px;font-family:courier,monospace;font-size:.85rem}.tab-buttons{gap:4px;display:flex}.tab-buttons button{background:var(--bg-orang);cursor:pointer;border:none;border-radius:4px;margin-top:20px;padding:10px 20px}.tab-buttons button.active{color:#fff;background:#fdc17f;font-weight:700}.tab-content{display:none}.tab-content.active{display:block}