.cpt{max-width:720px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:16px}.cpt h1{font-size:1.6rem;line-height:1.2}.cpt h2{font-size:1.1rem}.cpt p{color:var(--muted);line-height:1.5}.cpt .card{display:flex;flex-direction:column;gap:12px}.cpt .field input,.cpt .field select{min-height:44px;font-size:16px;padding:10px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--panel-2);color:var(--fg);font-family:inherit;width:100%}.cpt .btn{min-height:44px}.cpt .rang{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cpt .check{display:flex;gap:10px;align-items:flex-start;font-size:.92rem;color:var(--fg);line-height:1.4}.cpt .check input{width:22px;height:22px;min-width:22px;margin-top:1px;accent-color:var(--rec)}.cpt ul.liste{margin:0;padding-left:18px;color:var(--muted);display:flex;flex-direction:column;gap:4px;font-size:.9rem}.cpt .alerte{padding:12px 14px;border-radius:12px;border:1px solid var(--line-2);background:var(--panel-2);color:var(--fg);font-size:.92rem;line-height:1.45}.cpt .alerte.err{border-color:var(--rec);color:var(--fg)}.cpt .alerte.ok{border-color:var(--ok)}.cpt .petit{font-size:.84rem;color:var(--faint)}.cpt .badge{display:inline-flex;align-items:center;min-height:26px;padding:2px 10px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);font-size:.78rem;color:var(--muted)}.cpt .proj{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel);text-decoration:none;color:var(--fg);min-height:56px}.cpt .proj strong{display:block;overflow-wrap:anywhere}.cpt .slot{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.cpt .slot .nom{font-weight:600;overflow-wrap:anywhere}.cpt .barre{height:8px;border-radius:999px;background:var(--line);overflow:hidden}.cpt .barre span{display:block;height:100%;background:var(--rec);transition:width .3s}.cpt audio{width:100%}.cpt .fichier{position:relative;overflow:hidden}.cpt .fichier input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:16px}.cpt .qr{background:#fff;padding:8px;border-radius:12px;width:200px;height:200px}.cpt .grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cpt .chiffre{font:600 1.4rem var(--f-mono)}.cpt table{width:100%;border-collapse:collapse;font-size:.82rem}.cpt td,.cpt th{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}