.cobol{--papier:var(--color-bg,#f3f5f2);--surface:var(--color-surface,#fff);--encre:var(--color-ink,#1d2a35);--doux:var(--color-ink-muted,#5b6b74);--trait:var(--color-line,#d5ddd8);--grille:color-mix(in srgb, var(--trait) 55%, var(--surface));--zone-a:color-mix(in srgb, var(--trait) 30%, var(--surface));--accent:var(--color-accent,#0b6e4f);--sur-accent:var(--color-on-accent,#fff);--accent-fond:color-mix(in srgb, var(--accent) 11%, var(--surface));--code-fond:#101820;--code-texte:#d6e2ea;--code-doux:#8a9cab;--code-trait:#2e4253;--code-bande:#17222c;--ok:var(--color-success,#2f7a4a);--erreur:var(--color-danger,#a8352a);--erreur-fond:var(--color-danger-bg,#f8e7e4);--f-titre:var(--font-serif,system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);--f-texte:var(--font-sans,system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);--f-code:var(--font-mono,ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace)}.cobol *{box-sizing:border-box}.cobol{color:var(--encre);font:15px/1.5 var(--f-texte)}.cobol .page{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));gap:18px;max-width:1500px;margin:0 auto;padding-block:20px 40px;display:grid}.cobol header.tete{flex-wrap:wrap;align-items:center;gap:8px 24px;display:flex}.cobol .tete-titre{flex-direction:column;flex:260px;gap:2px;display:flex}.cobol h1{font:700 1.5rem/1.15 var(--f-titre);letter-spacing:-.01em;margin:0}.cobol header.tete p{color:var(--doux);flex:100%;max-width:95ch;margin:0;font-size:.88rem}.cobol .tete-liens{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cobol .lien-tete{min-height:40px;color:var(--encre);border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.cobol .lien-tete:hover{background:var(--accent-fond);color:var(--accent)}.cobol .tete-liens .bouton{align-items:center;gap:8px;min-height:40px;display:inline-flex}.cobol .atelier{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:18px;display:grid}@media (max-width:980px){.cobol .atelier{grid-template-columns:minmax(0,1fr)}}.cobol .panneau{background:var(--surface);border:1px solid var(--trait);border-radius:10px;min-width:0}.cobol .panneau.programme{overflow:hidden}.cobol .onglets{border-bottom:1px solid var(--trait);flex-wrap:wrap;gap:14px 26px;padding:14px 16px;display:flex}.cobol .groupe{flex-direction:column;gap:6px;display:flex}.cobol .groupe-titre{font:600 .68rem var(--f-texte);text-transform:uppercase;letter-spacing:.07em;color:var(--doux)}.cobol .groupe-onglets{flex-wrap:wrap;gap:4px;display:flex}.cobol .onglets button{min-height:36px;font:500 .88rem var(--f-texte);color:var(--encre);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.cobol .onglets button:hover{background:var(--papier)}.cobol .onglets button[aria-selected=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-fond);font-weight:600}.cobol .compte:not(:empty){background:var(--grille);min-width:1.5em;color:var(--doux);text-align:center;border-radius:999px;padding:0 6px;font-size:.75rem;font-weight:600}.cobol .verdict-modele{border-top:1px solid var(--trait);background:var(--accent-fond);color:var(--accent);border-radius:0 0 10px 10px;margin:0;padding:10px 16px;font-size:.84rem;font-weight:500}.cobol .verdict-modele.incomplet{background:var(--erreur-fond);color:var(--erreur)}.cobol .segment{border:1px solid var(--trait);border-radius:6px;display:inline-flex;overflow:hidden}.cobol .segment button{background:var(--surface);width:2.2em;min-height:32px;color:var(--doux);font:600 .85rem var(--f-code);cursor:pointer;border:0}.cobol .segment button+button{border-left:1px solid var(--trait)}.cobol .segment button[aria-pressed=true]{background:var(--accent);color:var(--sur-accent)}.cobol code.pic{background:var(--accent-fond);color:var(--accent);font:.82rem var(--f-code);white-space:nowrap;border-radius:5px;padding:2px 7px;display:inline-block}.cobol .onglets button:focus-visible,.cobol button:focus-visible,.cobol input:focus-visible,.cobol select:focus-visible,.cobol textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cobol .contenu{gap:14px;padding:16px;display:grid}.cobol .aide{color:var(--doux);max-width:65ch;margin:0;font-size:.88rem}.cobol .table-defile{overflow-x:auto}.cobol table{border-collapse:collapse;width:100%;min-width:600px;font-size:.88rem}.cobol select{min-width:7.5em}.cobol th{text-align:left;font:600 .72rem var(--f-texte);text-transform:uppercase;letter-spacing:.06em;color:var(--doux);border-bottom:1px solid var(--trait);white-space:nowrap;padding:4px 6px}.cobol td{border-bottom:1px solid var(--grille);vertical-align:middle;padding:3px 4px}.cobol input,.cobol select{font:inherit;color:var(--encre);background:var(--papier);border:1px solid var(--trait);border-radius:4px;width:100%;min-width:0;padding:4px 6px}.cobol input[type=checkbox]{width:auto;accent-color:var(--accent)}.cobol input.code,.cobol td.code{font-family:var(--f-code);text-transform:uppercase;font-size:.85rem}.cobol input.num{width:4.5em}.cobol .ligne-champs{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 14px;display:grid}.cobol label.champ{color:var(--doux);gap:3px;font-size:.8rem;font-weight:600;display:grid}.cobol fieldset{border:1px solid var(--trait);border-radius:5px;gap:8px;min-width:0;margin:0;padding:10px 12px;display:grid}.cobol legend{padding:0 4px;font-size:.82rem;font-weight:600}.cobol .cases{flex-wrap:wrap;gap:6px 16px;display:flex}.cobol .cases label{font-family:var(--f-code);align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.cobol .actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cobol button.bouton{font:600 .85rem var(--f-texte);cursor:pointer;border:1px solid var(--trait);background:var(--surface);color:var(--encre);border-radius:4px;padding:7px 12px}.cobol button.bouton.principal{background:var(--accent);border-color:var(--accent);color:var(--sur-accent)}.cobol button.mini{font:600 .8rem var(--f-code);color:var(--doux);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:2px 6px}.cobol button.mini:hover{border-color:var(--trait);color:var(--encre)}.cobol .ordre{gap:4px;display:grid}.cobol .ordre div{font-family:var(--f-code);background:var(--papier);border-radius:3px;grid-template-columns:1fr auto auto auto;align-items:center;gap:4px;padding:3px 6px;font-size:.85rem;display:grid}.cobol .ordre div small{font-family:var(--f-texte);color:var(--doux)}.cobol .source-tete{border-bottom:1px solid var(--trait);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;display:flex}.cobol .source-titre{flex-wrap:wrap;flex:220px;align-items:baseline;gap:2px 10px;min-width:0;display:flex}.cobol .source-titre h2{font:600 1rem var(--f-code);margin:0}.cobol .sous-titre{color:var(--doux);font-size:.82rem}.cobol .source-tete .actions .principal{align-items:center;gap:8px;display:inline-flex}.cobol .pastille{background:var(--accent-fond);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.78rem;font-weight:500;display:inline-flex}.cobol .pastille:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.cobol .pastille.incomplet{background:var(--erreur-fond);color:var(--erreur)}.cobol .pastille.modifie{background:var(--grille);color:var(--encre)}.cobol .vues{border-bottom:1px solid var(--trait);flex-wrap:wrap;gap:2px;padding:4px 10px 0;display:flex}.cobol .vues button{min-height:40px;font:500 .88rem var(--f-texte);color:var(--doux);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.cobol .vues button[aria-selected=true]{color:var(--encre);border-bottom-color:var(--accent);font-weight:600}.cobol .vues .note:not(:empty){color:var(--doux);font-size:.75rem;font-weight:400}.cobol [role=tabpanel][hidden]{display:none}.cobol .editeur{min-width:0;display:flex}.cobol .plan{border-right:1px solid var(--trait);background:var(--papier);flex-direction:column;flex:0 0 132px;gap:4px;max-height:min(72vh,700px);padding:10px 6px;display:flex;overflow-y:auto}.cobol .plan-titre{font:600 .68rem var(--f-texte);text-transform:uppercase;letter-spacing:.07em;color:var(--doux);padding:0 8px 4px}.cobol #plan{flex-direction:column;gap:1px;display:flex}.cobol .plan-entree{min-height:30px;color:var(--encre);font:.78rem var(--f-code);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:0 8px;display:flex}.cobol .plan-entree span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cobol .plan-entree small{color:var(--doux);font-size:.72rem}.cobol .plan-entree:hover{background:var(--grille)}@media (max-width:720px){.cobol .plan{display:none}}.cobol .feuille{background:var(--code-fond);min-width:0;max-height:min(72vh,700px);color:var(--code-texte);flex:auto;position:relative;overflow:auto}.cobol .feuille-interne{width:calc(85ch + 24px);font:13px/1.55 var(--f-code);position:relative}.cobol .regle{z-index:1;color:var(--code-doux);background:var(--code-bande);border-bottom:1px solid var(--code-trait);white-space:pre;-webkit-user-select:none;user-select:none;padding-left:calc(5ch + 12px);display:flex;position:sticky;top:0}.cobol .gouttiere{text-align:right;width:calc(5ch + 6px);color:var(--code-doux);white-space:pre;-webkit-user-select:none;user-select:none;font:inherit;padding-top:8px;position:absolute;top:0;left:0}.cobol textarea#source{resize:none;width:calc(80ch + 24px);min-height:520px;font:inherit;color:var(--code-texte);caret-color:#fff;white-space:pre;tab-size:4;background:linear-gradient(to right, transparent calc(6ch + 6px), var(--code-bande) calc(6ch + 6px), var(--code-bande) calc(7ch + 6px), transparent calc(7ch + 6px)), linear-gradient(to right, transparent calc(7ch + 6px), var(--code-bande) calc(7ch + 6px), var(--code-bande) calc(11ch + 6px), transparent calc(11ch + 6px)), linear-gradient(to right, transparent calc(72ch + 6px), var(--code-trait) calc(72ch + 6px), var(--code-trait) calc(72ch + 7px), transparent calc(72ch + 7px)), var(--code-fond);border:0;margin-left:calc(5ch + 6px);padding:8px 6px;display:block;overflow:hidden}.cobol textarea#source:focus-visible{outline-offset:-2px}.cobol textarea#source::selection{background:#2f5d4c}.cobol .legende{border-top:1px solid var(--trait);color:var(--doux);flex-wrap:wrap;gap:4px 16px;padding:8px 14px;font-size:.78rem;display:flex}.cobol .legende i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.cobol .legende .l-ind,.cobol .legende .l-zone-a{background:var(--code-bande);border:1px solid var(--code-trait)}.cobol .legende .l-72{background:var(--code-doux);width:2px}.cobol pre.sysout{max-height:min(72vh,700px);font:13px/1.55 var(--f-code);background:var(--code-fond);color:var(--code-texte);min-height:12em;margin:0;padding:12px 16px 16px;overflow:auto}.cobol .bandeau-resultat:empty{display:none}.cobol .message{border-bottom:1px solid var(--trait);flex-wrap:wrap;align-items:center;gap:4px 16px;margin:0;padding:10px 16px;font-size:.86rem;display:flex}.cobol .message.erreur{background:var(--erreur-fond);color:var(--erreur)}.cobol .message.ok{background:var(--accent-fond);color:var(--accent)}.cobol .message.ok strong{font-weight:600}.cobol .fichiers{border-bottom:1px solid var(--trait);flex-wrap:wrap;gap:6px;padding:10px 14px;display:flex}.cobol .fichiers:empty{display:none}.cobol .fichiers button{font:.78rem var(--f-code)}.cobol .fichiers button[aria-pressed=true]{background:var(--accent-fond);border-color:var(--accent)}.cobol pre.brut{font:12px/1.5 var(--f-code);background:var(--papier);border-radius:4px;margin:0;padding:8px 10px;overflow-x:auto}@media (prefers-reduced-motion:no-preference){.cobol button.bouton{transition:background .15s}}.cobol .partage{border:1px solid var(--accent);background:var(--accent-fond);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;display:flex}.cobol .partage[hidden]{display:none}.cobol .partage p{flex:32ch;margin:0}.cobol .partage input{min-width:0;font:.8rem var(--f-code);border:1px solid var(--trait);background:var(--surface);color:var(--encre);border-radius:4px;flex:40ch;padding:7px 8px}.cobol .defi{border:1px solid var(--accent);background:var(--accent-fond);border-radius:6px;gap:8px;padding:14px 16px;display:grid}.cobol .defi[hidden]{display:none}.cobol .defi h2{margin:0;font-size:1.05rem}.cobol .defi p,.cobol .defi ol{margin:0}.cobol .defi ol{padding-left:1.4em;list-style:decimal}.cobol .defi summary{cursor:pointer}.cobol .defi .sysout{max-height:22em;overflow:auto}.cobol .defi .verdict{font-weight:600}.cobol .defi .verdict code{font:.85rem var(--f-code);white-space:pre;background:var(--surface);border-radius:3px;padding:1px 4px}.cobol .defi .verdict.reussi{color:var(--ok,inherit)}.cobol .defi .actions{flex-wrap:wrap;gap:8px;display:flex}
