/* Généré depuis outils/sources/carnets.css : modifie la source, pas ce fichier. */
.cn-head .lede{max-width:60ch}
.cn-counters{display:flex;flex-wrap:wrap;gap:10px 22px;margin:20px 0 0}
.cn-counter{display:flex;align-items:baseline;gap:8px;margin:0;font-size:.92rem;color:var(--ink-soft)}
.cn-counter b{font:900 1.7rem/1 'Archivo',sans-serif;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.cn-counter--main b{font-size:2.4rem;color:var(--coral-text)}
.cn-meter{display:flex;align-items:center;gap:12px;margin:14px 0 0;max-width:460px}
.cn-meter-bar{flex:1;height:12px;border:2px solid var(--ink);border-radius:999px;background:var(--paper-2);overflow:hidden}
.cn-meter-bar i,.cn-dcard-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--amber),var(--coral));transition:width .7s var(--ease-out)}
.cn-meter-pct{font-weight:800;font-variant-numeric:tabular-nums;min-width:3.6em}
.cn-head-links{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0}
.cn-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 16px;border:2px solid var(--ink);border-radius:10px;background:#fff;color:var(--ink);font:700 .92rem/1.2 inherit;text-decoration:none;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}
.cn-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.cn-btn--main{background:var(--amber)}
.cn-btn--ghost{box-shadow:none;border-color:var(--rule);background:transparent}
.cn-btn--ghost:hover{border-color:var(--ink);box-shadow:none;transform:none}
.cn-btn:focus-visible,.cn-act:focus-visible,.cn-link:focus-visible,.cn-tabs [role=tab]:focus-visible,.cn-more:focus-visible,.cn-undo:focus-visible,.cn-dcard-btn:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.cn-app{padding-top:10px;padding-bottom:34px}
.cn-app-head .cn-local{margin:-4px 0 18px;color:var(--ink-soft);font-size:.92rem;max-width:78ch}
.cn-app-head .cn-local a{color:var(--coral-text);font-weight:700}
.cn-loading,.cn-noscript{padding:14px 16px;border:2px dashed var(--rule);border-radius:10px;color:var(--ink-soft)}
.cn-tabs{display:flex;flex-wrap:wrap;gap:0;border:2px solid var(--ink);border-radius:12px;overflow:hidden;width:max-content;max-width:100%;background:#fff;box-shadow:4px 4px 0 var(--ink)}
.cn-tabs [role=tab]{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:9px 16px;border:0;border-right:2px solid var(--ink);background:transparent;color:var(--ink);font:700 .95rem/1.2 inherit;cursor:pointer;transition:background var(--dur)}
.cn-tabs [role=tab]:last-child{border-right:0}
.cn-tabs [role=tab]:hover{background:var(--paper-2)}
.cn-tabs [role=tab][aria-selected=true]{background:var(--ink);color:#fff}
.cn-tab-n{display:inline-block;min-width:2em;padding:2px 7px;border-radius:999px;background:var(--paper-2);color:var(--ink);font-size:.8rem;font-variant-numeric:tabular-nums;text-align:center}
.cn-tabs [aria-selected=true] .cn-tab-n{background:var(--amber)}
.cn-tools{display:grid;grid-template-columns:minmax(220px,2fr) repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:20px 0 6px;align-items:end}
.cn-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.cn-field label{font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}
.cn-field input,.cn-field select{min-height:44px;width:100%;padding:8px 11px;border:2px solid var(--ink);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:.95rem}
.cn-field input:focus-visible,.cn-field select:focus-visible,.cn-stock input:focus-visible{outline:3px solid var(--amber);outline-offset:1px}
.cn-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;min-height:34px;margin:6px 0 8px}
.cn-count{margin:0;font-weight:700;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.cn-link{border:0;background:none;padding:6px 2px;color:var(--coral-text);font:700 .9rem inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.cn-panel:focus{outline:none}
.cn-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;align-items:start}
.cn-card{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr);gap:0;border:2px solid var(--ink);border-radius:12px;overflow:hidden;background:#fff;box-shadow:4px 4px 0 rgba(26,26,30,.16);transition:box-shadow var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}
.cn-card:hover{box-shadow:6px 6px 0 rgba(26,26,30,.22)}
.cn-card.is-own{box-shadow:4px 4px 0 var(--amber)}
.cn-body{position:relative;min-width:0;padding:12px 14px 12px 20px;background:repeating-linear-gradient(180deg,transparent 0 25px,rgba(223,217,204,.55) 25px 26px)}
.cn-body::before{content:'';position:absolute;left:9px;top:0;bottom:0;width:2px;background:rgba(232,69,44,.45)}
.cn-thumb{position:relative;display:grid;place-items:center;align-self:stretch;min-height:96px;background:var(--paper-2);border-right:2px solid var(--ink);overflow:hidden}
.cn-thumb img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:auto}
.cn-thumb--schema{background:#F4F0E7}
.cn-thumb--schema img,.cn-thumb--schema svg{object-fit:contain;padding:10px;width:100%;height:auto;max-height:100px}
.cn-thumb--ico{background:repeating-linear-gradient(135deg,var(--paper-2) 0 8px,var(--paper) 8px 16px);color:var(--ink-soft)}
.cn-thumb--ico .cn-ico{width:40px;height:40px}
.cn-ico .ac{stroke:var(--coral)}
.cn-thumb[data-dot=amber]{color:#9A5B00}.cn-thumb[data-dot=coral]{color:var(--coral-text)}.cn-thumb[data-dot=paper]{color:var(--ink)}.cn-thumb[data-dot=amber2]{color:#8A6A45}.cn-thumb[data-dot=wine]{color:#7A2440}
.cn-thumb--dot{background:var(--paper)}
.cn-dot{display:block;width:30px;height:30px;border-radius:50%;background:var(--dot,#B5762A);border:3px solid #fff;box-shadow:0 0 0 2px var(--ink)}
.cn-thumb--doc{background:linear-gradient(165deg,#2B1B4D,#5A2358)}
.cn-doc-tool{color:#FFE3A6;font:900 .82rem/1 'Archivo',sans-serif;letter-spacing:.12em;text-transform:uppercase;transform:rotate(-8deg)}
.cn-kicker{margin:0 0 4px;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--coral-text);overflow-wrap:anywhere}
.cn-name{margin:0;font-size:1.06rem;line-height:1.3;letter-spacing:-.01em}
.cn-card .cn-name a{display:inline-block;min-height:24px;padding:1px 0;color:var(--ink);text-decoration:none;background-image:linear-gradient(var(--amber),var(--amber));background-size:0 3px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .25s var(--ease-out)}
.cn-name a:hover,.cn-name a:focus-visible{background-size:100% 3px}
.cn-name a:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.cn-summary,.cn-note{margin:6px 0 0;font-size:.88rem;color:var(--ink-soft);line-height:1.5}
.cn-note{font-style:italic}
.cn-badges{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.cn-stamp{display:inline-block;padding:2px 8px;border:2px solid var(--coral-text);border-radius:6px;color:var(--coral-text);font:900 .72rem/1.3 'Archivo',sans-serif;letter-spacing:.1em;text-transform:uppercase;transform:rotate(-3deg);background:rgba(255,255,255,.8)}
.cn-wishb,.cn-favb{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--amber);color:var(--ink);font-size:.74rem;font-weight:800}
.cn-favb{background:var(--paper-2);border:1px solid var(--ink)}
.cn-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.cn-act{display:inline-flex;align-items:center;min-height:40px;padding:7px 12px;border:2px solid var(--ink);border-radius:9px;background:#fff;color:var(--ink);font:700 .86rem/1.2 inherit;text-decoration:none;cursor:pointer;transition:background var(--dur),transform var(--dur) var(--ease-out)}
.cn-act:hover{background:var(--paper-2)}
.cn-act:active{transform:translateY(1px)}
.cn-act--main{background:var(--amber)}
.cn-act--main:hover{background:#FFC05A}
.cn-act--ghost{border-color:var(--rule)}
.cn-act--ghost:hover{border-color:var(--ink)}
.cn-act--link{border-color:transparent;background:none;color:var(--coral-text);text-decoration:underline;text-underline-offset:3px;padding-left:4px;padding-right:4px}
.cn-act--link:hover{background:none;color:var(--ink)}
.cn-act[aria-pressed=true]{background:var(--ink);color:#fff}
.cn-act:disabled{opacity:.55;cursor:not-allowed}
.cn-stock{margin:10px 0 0;padding:9px 10px;border:2px dashed var(--rule);border-radius:9px;background:rgba(253,251,247,.9)}
.cn-stock[data-state=en-stock]{border-style:solid;border-color:#2A9D8F}
.cn-stock[data-state=epuise]{border-style:solid;border-color:var(--coral)}
.cn-stock-state{margin:0 0 6px;font-size:.88rem}
.cn-stock-form{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.cn-stock-form label{font-size:.8rem;font-weight:700;color:var(--ink-soft);width:100%}
.cn-stock-form input{width:7.5em;min-height:40px;padding:6px 9px;border:2px solid var(--ink);border-radius:8px;font:inherit}
.cn-stock-q{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.cn-stock-q .cn-act,.cn-stock-form .cn-act{min-height:36px;padding:5px 10px;font-size:.8rem}
.cn-stock-hint{margin:6px 0 0;font-size:.8rem;color:var(--ink-soft)}
@keyframes cn-in{from{opacity:0;transform:translateY(10px) rotate(-.4deg)}to{opacity:1;transform:none}}
@keyframes cn-out{to{opacity:0;transform:translateX(18px) scale(.97)}}
.cn-grid.is-anim .cn-card{animation:cn-in .42s var(--ease-out) both;animation-delay:calc(var(--i,0) * 30ms)}
.cn-card.is-leaving{animation:cn-out .18s ease-in forwards;pointer-events:none}
.cn-empty{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center;padding:22px;border:2px dashed var(--ink);border-radius:14px;background:repeating-linear-gradient(180deg,var(--paper) 0 27px,rgba(223,217,204,.5) 27px 28px)}
.cn-empty-art svg{width:120px;height:auto;display:block}
.cn-empty h3{margin:0 0 6px;font-size:1.2rem}
.cn-empty p{margin:0;color:var(--ink-soft);max-width:62ch}
.cn-empty-links{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0!important}
.cn-more-wrap{margin:18px 0 0;text-align:center}
.cn-more{min-height:44px;padding:9px 18px;border:2px solid var(--ink);border-radius:10px;background:#fff;font:700 .92rem inherit;cursor:pointer;box-shadow:3px 3px 0 var(--ink)}
.cn-more:hover{background:var(--paper-2)}
.cn-orphans{margin:26px 0 0;padding:16px 18px;border:2px solid var(--rule);border-radius:12px;background:var(--paper-2)}
.cn-orphans h3{margin:0 0 6px;font-size:1.05rem}
.cn-orphans p{margin:0 0 10px;color:var(--ink-soft);font-size:.9rem;max-width:72ch}
.cn-orphan-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.cn-orphan-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.cn-orphan-list code{font:600 .85rem ui-monospace,monospace;background:#fff;padding:2px 6px;border-radius:5px;border:1px solid var(--rule)}
.cn-status{position:sticky;bottom:14px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:max-content;max-width:100%;margin:18px auto 0;padding:0;border-radius:12px;background:var(--ink);color:#fff;font-size:.92rem;box-shadow:4px 4px 0 var(--amber);opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s;pointer-events:none}
.cn-status.is-on{opacity:1;transform:none;padding:10px 14px;pointer-events:auto}
.cn-undo{min-height:36px;padding:5px 12px;border:2px solid var(--amber);border-radius:8px;background:transparent;color:#FFE3A6;font:800 .86rem inherit;cursor:pointer}
.cn-undo:hover{background:var(--amber);color:var(--ink)}
.cn-about{padding-bottom:10px}
.cn-about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cn-about-card{padding:16px 18px;border:2px solid var(--ink);border-radius:12px;background:#fff;box-shadow:4px 4px 0 rgba(26,26,30,.12)}
.cn-about-card h3{margin:0 0 6px;font-size:1.05rem}
.cn-about-card p{margin:0;color:var(--ink-soft);font-size:.94rem;line-height:1.6}
.cn-cats{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0}
.cn-cats li{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1.5px solid var(--ink);border-radius:999px;background:var(--paper-2);font-size:.86rem}
.cn-cats b{font-variant-numeric:tabular-nums}
.cn-faq-in{max-width:880px}
.cn-others{padding-bottom:40px}
.cn-other-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.cn-other-list li{flex:1 1 220px;max-width:320px}
.cn-other-list a{display:flex;flex-direction:column;gap:3px;min-height:64px;padding:11px 14px;border:2px solid var(--ink);border-radius:11px;background:#fff;color:var(--ink);text-decoration:none;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}
.cn-other-list a:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--amber)}
.cn-other-list a:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.cn-other-t{font-weight:800}
.cn-other-b{font-size:.84rem;color:var(--coral-text)}
.cn-back{margin:16px 0 0}
.cn-back a{font-weight:700;color:var(--coral-text)}
.cn-dash-intro{max-width:78ch;color:var(--ink-soft)}
.cn-dash{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0 0}
.cn-dcard{position:relative;display:flex;flex-direction:column;border:2px solid var(--ink);border-radius:14px;overflow:hidden;background:#fff;box-shadow:4px 4px 0 rgba(26,26,30,.16);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}
.cn-dcard:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--amber)}
.cn-dcard.is-target{box-shadow:0 0 0 4px var(--amber),6px 6px 0 var(--ink)}
.cn-dcard-cover{display:block;aspect-ratio:16/7;overflow:hidden;border-bottom:2px solid var(--ink);background:var(--paper-2)}
.cn-dcard-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out)}
.cn-dcard:hover .cn-dcard-cover img{transform:scale(1.04)}
.cn-dcard-body{display:flex;flex-direction:column;gap:8px;flex:1;padding:14px 16px 16px 22px;position:relative}
.cn-dcard-body::before{content:'';position:absolute;left:10px;top:0;bottom:0;width:2px;background:rgba(232,69,44,.4)}
.cn-dcard h3{margin:0;font-size:1.2rem}
.cn-dcard h3 a{display:inline-flex;align-items:center;min-height:28px;color:var(--ink);text-decoration:none}
.cn-dcard h3 a:hover{text-decoration:underline;text-decoration-color:var(--amber);text-decoration-thickness:3px}
.cn-dcard-n{margin:0;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.cn-dcard-n strong{font:900 1.6rem/1 'Archivo',sans-serif;color:var(--coral-text)}
.cn-dcard-bar{display:block;height:9px;border:1.5px solid var(--ink);border-radius:999px;background:var(--paper-2);overflow:hidden}
.cn-dcard-fams{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:.88rem}
.cn-dcard-fams li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed var(--rule);padding:3px 0}
.cn-dcard-fams .suivi-n{font-size:.88rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.cn-dcard-extra{margin:0;font-size:.84rem;color:var(--ink-soft);min-height:1.2em}
.cn-dcard-extra:empty{display:none}
.cn-dcard-btn{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:9px 15px;border:2px solid var(--ink);border-radius:10px;background:var(--amber);color:var(--ink);font-weight:800;text-decoration:none;box-shadow:3px 3px 0 var(--ink);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}
.cn-dcard-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.lk-anchor{display:block;height:0;scroll-margin-top:90px}
@media (max-width:1100px){.cn-dash{grid-template-columns:repeat(2,minmax(0,1fr))}.cn-dash>.cn-dcard:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 9px)}.cn-about-grid{grid-template-columns:1fr 1fr}.cn-about-grid>:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 8px)}}
@media (max-width:700px){
  .cn-dash,.cn-about-grid{grid-template-columns:1fr}
  .cn-dash>.cn-dcard:last-child:nth-child(odd),.cn-about-grid>:last-child:nth-child(odd){width:auto;justify-self:stretch}
  .cn-tools{grid-template-columns:1fr 1fr}
  .cn-field--q{grid-column:1/-1}
  .cn-tabs{width:100%}
  .cn-tabs [role=tab]{flex:1 1 auto;justify-content:center;padding:9px 10px;font-size:.88rem;border-right:0;border-bottom:2px solid var(--ink)}
  .cn-tabs [role=tab]:last-child{border-bottom:0}
  .cn-grid{grid-template-columns:1fr}
  .cn-card{grid-template-columns:84px minmax(0,1fr)}
  .cn-empty{grid-template-columns:1fr;text-align:left}
  .cn-empty-art svg{width:84px}
  .cn-counter--main b{font-size:2rem}
  .cn-status{bottom:10px;margin-left:0}
}
@media (max-width:380px){.cn-tools{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){
  .cn-grid.is-anim .cn-card,.cn-card.is-leaving{animation:none}
  .cn-meter-bar i,.cn-dcard-bar i,.cn-card,.cn-dcard,.cn-dcard-cover img,.cn-btn,.cn-status{transition:none}
  .cn-dcard:hover,.cn-btn:hover,.cn-other-list a:hover,.cn-dcard-btn:hover{transform:none}
}
@media print{.cn-tools,.cn-tabs,.cn-actions,.cn-stock-form,.cn-stock-q,.cn-status,.cn-more-wrap{display:none!important}.cn-card{break-inside:avoid;box-shadow:none}}
.cn-serieb{display:inline-block;padding:2px 8px;border-radius:999px;background:#ece7f5;color:#3b2a66;font-size:.74rem;font-weight:800;border:1px dashed #3b2a66}
.cn-counter--serie{font-size:.86rem;opacity:.85}
.cn-score{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;margin:20px 0 0;}
.cn-score .cn-counters{margin:0;flex:1 1 260px;}
.cn-ring{position:relative;flex:none;width:112px;height:112px;}
.cn-ring svg{display:block;width:100%;height:100%;transform:rotate(-90deg);}
.cn-ring circle{fill:none;stroke-width:11;}
.cn-ring-bg{stroke:var(--paper-2);}
.cn-ring::before{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);pointer-events:none;}
.cn-ring::after{content:'';position:absolute;inset:13px;border-radius:50%;border:2px solid var(--ink);pointer-events:none;}
.cn-ring-fg{stroke:var(--coral);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,0));transition:stroke-dashoffset 1.1s var(--ease-out);}
.cn-ring-pct{position:absolute;inset:0;display:grid;place-items:center;padding:0 22px;text-align:center;font:900 1.05rem/1.05 'Archivo',sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums;}
.cn-head-links{margin-top:20px;}
.cn-tabs{box-shadow:4px 4px 0 var(--amber);}
.cn-tools{padding:14px;border:2px solid var(--rule);border-radius:14px;background:var(--paper-2);}
.cn-grid{align-items:stretch;gap:18px;}
.cn-card{grid-template-columns:120px minmax(0,1fr);border-radius:14px;}
.cn-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 rgba(26,26,30,.24);}
.cn-card.is-own:hover{box-shadow:6px 6px 0 var(--amber);}
.cn-body{display:flex;flex-direction:column;}
.cn-actions{margin-top:auto;padding-top:12px;}
.cn-thumb{min-height:116px;}
.cn-thumb--schema img,.cn-thumb--schema svg{max-height:120px;padding:12px;transition:transform .5s var(--ease-out);}
.cn-card:hover .cn-thumb--schema img,.cn-card:hover .cn-thumb--schema svg{transform:scale(1.08) rotate(-3deg);}
.cn-thumb img{transition:transform .6s var(--ease-out);}
.cn-card:hover .cn-thumb img{transform:scale(1.06);}
.cn-thumb--ico .cn-ico{width:46px;height:46px;transition:transform .45s var(--ease-spring);}
.cn-card:hover .cn-thumb--ico .cn-ico{transform:scale(1.12) rotate(-6deg);}
.cn-act--link{order:5;flex-basis:100%;justify-content:flex-start;min-height:36px;margin-top:2px;padding:4px 0;color:var(--ink-soft);text-decoration:none;font-size:.82rem;gap:6px;}
.cn-act--link::before{content:'';flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/contain no-repeat;}
.cn-act--link:hover{color:var(--coral-text);text-decoration:underline;text-underline-offset:3px;}
.cn-stamp{animation:cn-stamp .45s cubic-bezier(.3,1.6,.5,1) both;}
@keyframes cn-stamp{from{opacity:0;transform:rotate(-14deg) scale(1.6);}to{opacity:1;transform:rotate(-3deg) scale(1);}}
.cn-empty{border:2px solid var(--ink);border-radius:16px;box-shadow:5px 5px 0 rgba(26,26,30,.14);position:relative;overflow:hidden;}
.cn-empty::before{content:'';position:absolute;top:-8px;left:50%;width:120px;height:26px;margin-left:-60px;background:rgba(245,165,36,.55);transform:rotate(-2deg);border:1px solid rgba(26,26,30,.15);}
.cn-empty-art svg{overflow:visible;}
.cn-art-pen{transform-box:fill-box;transform-origin:0% 100%;animation:cn-pen 2.6s ease-in-out infinite;}
@keyframes cn-pen{0%,100%{transform:translate(0,0) rotate(0);}25%{transform:translate(-6px,2px) rotate(-6deg);}50%{transform:translate(-12px,0) rotate(2deg);}75%{transform:translate(-5px,3px) rotate(-4deg);}}
.cn-art-l{stroke-dasharray:40;stroke-dashoffset:40;animation:cn-lines 2.6s ease-in-out infinite;}
@keyframes cn-lines{0%{stroke-dashoffset:40;}55%,100%{stroke-dashoffset:0;}}
.cn-art-dot{transform-box:fill-box;transform-origin:center;animation:cn-dot 2.6s ease-in-out infinite;}
@keyframes cn-dot{0%,100%{transform:scale(1);}50%{transform:scale(1.25);}}
.cn-about-card{position:relative;padding:18px 18px 16px;border-radius:14px;overflow:hidden;transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out);}
.cn-about-card::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--amber),var(--coral));}
.cn-about-n{display:block;margin:2px 0 6px;font:900 2.2rem/1 'Archivo',sans-serif;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1.5px var(--ink);}
.cn-about-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--amber);}
.cn-about-card:hover .cn-about-n{color:var(--amber);}
.cn-cats{gap:8px;}
.cn-cats li{gap:8px;padding:4px 5px 4px 12px;background:#fff;font-weight:700;transition:transform .2s var(--ease-out),background .2s;}
.cn-cats b{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:.76rem;}
.cn-cats li:hover{transform:translateY(-2px);background:var(--paper-2);}
.cn-other-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.cn-other-list li{max-width:none;}
.cn-other-list a{flex-direction:column;gap:0;min-height:0;padding:0;overflow:hidden;border-radius:14px;box-shadow:4px 4px 0 rgba(26,26,30,.14);height:100%;}
.cn-other-img{display:block;aspect-ratio:16/8;overflow:hidden;border-bottom:2px solid var(--ink);background:var(--paper-2);}
.cn-other-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out);}
.cn-other-list a:hover .cn-other-img img{transform:scale(1.07);}
.cn-other-txt{display:flex;flex-direction:column;gap:3px;padding:10px 14px 12px;}
.cn-other-b{display:inline-flex;align-items:center;gap:5px;font-weight:700;}
.cn-other-b::after{content:'';display:inline-block;width:.8em;height:.8em;vertical-align:-.08em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23000%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M9 5l7 7-7 7%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%23000%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M9 5l7 7-7 7%27/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s var(--ease-out);}
.cn-other-list a:hover .cn-other-b::after{transform:translateX(3px);}
.cn-back a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:9px 16px;border:2px solid var(--ink);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:3px 3px 0 var(--ink);}
.cn-back a:hover{background:var(--amber);}
@media (max-width:1100px){.cn-other-list{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:760px){.cn-other-list{grid-template-columns:repeat(2,minmax(0,1fr));}.cn-ring{width:96px;height:96px;}.cn-ring-pct{font-size:.95rem;padding:0 18px;}}
@media (max-width:400px){.cn-other-list{grid-template-columns:1fr;}.cn-other-txt{overflow-wrap:anywhere;}}
@media (max-width:700px){.cn-card{grid-template-columns:92px minmax(0,1fr);}.cn-tools{padding:12px;}}
@media (prefers-reduced-motion:reduce){
  .cn-ring-fg,.cn-thumb img,.cn-thumb--schema img,.cn-thumb--schema svg,.cn-thumb--ico .cn-ico,.cn-other-img img,.cn-about-card{transition:none;}
  .cn-stamp,.cn-art-pen,.cn-art-l,.cn-art-dot{animation:none;}
  .cn-art-l{stroke-dashoffset:0;}
  .cn-card:hover,.cn-about-card:hover{transform:none;}
}
.cn-others .cn-other-list li>a:not([class]){color:var(--ink);background:#fff;}
.cn-others .cn-other-list .cn-other-b{color:var(--coral-text);}
.cn-others .cn-back a:not([class]){color:var(--ink);background:#fff;}
.cn-others .cn-back a:not([class]):hover{background:var(--amber);}
.tr-prog-board{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ring txt" "grades grades" "acts acts";gap:14px 22px;align-items:center;margin-top:14px;padding:22px 24px;border:2px solid var(--ink);border-radius:18px;background:radial-gradient(circle at 10% 0%,#4b2a6b,var(--night-deep) 60%);color:var(--paper);box-shadow:5px 5px 0 var(--amber);}
.tr-prog-ring{grid-area:ring;position:relative;width:104px;height:104px;border-radius:50%;background:conic-gradient(var(--amber) 0,var(--amber) var(--tr-p,0%),rgba(255,255,255,.14) var(--tr-p,0%));display:grid;place-items:center;}
.tr-prog-ring::before{content:'';position:absolute;inset:11px;border-radius:50%;background:var(--night-deep);}
.tr-prog-ring-c{position:relative;font:900 1.2rem/1 'Archivo',sans-serif;color:var(--paper);}
.tr-prog-t{grid-area:txt;min-width:0;}
.tr-prog-n{margin:0;font:900 1.9rem/1 var(--font-mono);color:var(--amber-2);}
.tr-prog-n span{margin:0 6px;color:rgba(255,255,255,.5);}
.tr-prog-l{margin:4px 0 0;font:800 1rem/1.2 'Archivo',sans-serif;color:var(--amber-2);}
.tr-prog-note{margin:6px 0 0;font-size:.86rem;color:rgba(255,255,255,.78);}
.tr-prog-grades{grid-area:grades;list-style:none;margin:0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.18);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.tr-prog-g{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;}
.tr-prog-g svg{width:46px;height:46px;padding:10px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#fff;color:var(--ink);}
.tr-prog-g--platine svg{background:linear-gradient(135deg,#e9eef5,#b9c4d6);} .tr-prog-g--or svg{background:linear-gradient(135deg,#ffe28a,#e4a51f);} .tr-prog-g--argent svg{background:linear-gradient(135deg,#f3f3f3,#bdbdbd);} .tr-prog-g--bronze svg{background:linear-gradient(135deg,#f0c39a,#b46a36);}
.tr-prog-g b{font:800 .95rem/1 var(--font-mono);color:var(--paper);} .tr-prog-g b i{font-style:normal;color:var(--amber-2);}
.tr-prog-g>span{font:700 .64rem/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75);}
.tr-prog-acts{grid-area:acts;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0;}
.tr-prog-btn{display:inline-flex;align-items:center;min-height:42px;padding:8px 18px;border:2px solid var(--amber);border-radius:999px;background:var(--amber);color:var(--ink);font:800 .9rem/1 'Archivo',sans-serif;text-decoration:none;transition:transform .2s var(--ease-out),background .2s var(--ease-out);}
.tr-prog-btn:hover{transform:translate(-1px,-2px);background:#fff;}
.tr-prog-link{color:var(--paper);font-weight:700;}
@media(max-width:640px){.tr-prog-board{grid-template-columns:1fr;grid-template-areas:"ring" "txt" "grades" "acts";justify-items:center;text-align:center;padding:18px 16px;}.tr-prog-grades{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;}}
@media(prefers-reduced-motion:reduce){.tr-prog-btn{transition:none;}.tr-prog-btn:hover{transform:none;}}
