*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ggk-text);background:#fafafe;padding-bottom:40px}main{max-width:1180px;margin:0 auto;padding:16px 12px}h1{font-size:20px;margin:0 0 2px}h2{font-size:17px;margin:0}.subtitle{color:var(--ggk-text-dim);font-size:13px;margin:0}code{font-family:ui-monospace,monospace;font-size:12px}:root{--tk-retard:#dc2626;--tk-bientot:#ea580c;--tk-avenir:#94a3b8;--tk-fait:#16a34a}.tk-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.tk-version{font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.04em;color:var(--ggk-text-dim);cursor:help}.tk-onglets{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tk-onglets::-webkit-scrollbar{display:none}.tk-onglet{display:inline-flex;align-items:center;gap:6px;flex:none;padding:8px 14px;border-radius:999px;border:1px solid var(--ggk-border);background:#fff;color:var(--ggk-text);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;min-height:42px}.tk-onglet.actif{background:var(--ggk-primary);border-color:var(--ggk-primary);color:#fff}.tk-onglet-badge{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--ggk-danger);color:#fff;font-size:12px;font-weight:700}.tk-onglet-badge.neutre{background:var(--ggk-text-dim)}.tk-onglet.actif .tk-onglet-badge{background:#fff;color:var(--ggk-primary)}.tk-suivante{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:10px 14px;border-radius:12px;margin-bottom:12px;background:#fff;border-left:1px solid var(--tk-avenir);border:1px solid var(--ggk-border);border-left-width:6px}.tk-suivante-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ggk-text-dim)}.tk-suivante-titre{font-size:16px}.tk-suivante-heure{margin-left:auto;font-family:ui-monospace,monospace;font-weight:700;color:var(--ggk-text-dim)}.tk-suivante-en_retard{border-left-color:var(--tk-retard);background:#fff5f5}.tk-suivante-en_retard .tk-suivante-label{color:var(--tk-retard)}.tk-suivante-bientot{border-left-color:var(--tk-bientot);background:#fff8f1}.tk-suivante-fini{border-left-color:var(--tk-fait);background:#f1fbf3}.tk-suivante-fini .tk-suivante-label{color:var(--tk-fait)}.check-progress{display:flex;align-items:center;gap:10px;margin:6px 0 10px}.check-progress-bar{flex:1 1;max-width:460px;height:9px;background:var(--ggk-border);border-radius:999px;overflow:hidden}.check-progress-fill{height:100%;background:linear-gradient(90deg,#7cb342,var(--ggk-success));border-radius:999px;transition:width .35s ease}.check-progress-text{font-size:13px;font-weight:600;color:var(--ggk-text-dim);white-space:nowrap}.check-progress-text strong{color:var(--ggk-success);font-size:15px}.tk-retard-compte{color:var(--tk-retard);font-weight:700}.tk-filtre{font-size:13px;color:var(--ggk-text-dim);margin-bottom:14px}.tk-fil{list-style:none;margin:0;padding:0}.tk-fil-section{margin-bottom:4px}.tk-separateur{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;margin:18px 0 8px;padding:6px 2px;background:#fafafe;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ggk-text-dim)}.tk-fil-section:first-child .tk-separateur{margin-top:0}.tk-separateur-heure{flex:none;font-family:ui-monospace,monospace;font-size:13px;letter-spacing:0;font-weight:800;color:var(--ggk-text)}.tk-separateur-trait{flex:none;width:26px;height:2px;background:var(--ggk-border)}.tk-separateur-titre{flex:1 1;min-width:0}.tk-separateur-compte{flex:none;font-size:11px;font-weight:700;letter-spacing:0;padding:1px 7px;border-radius:999px;background:var(--ggk-border);color:var(--ggk-text)}.tk-separateur-retard{flex:none;font-size:11px;letter-spacing:0;color:var(--tk-retard)}.tk-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tk-carte{background:#fff;border-left:1px solid var(--ggk-border);border-radius:10px;border:1px solid var(--ggk-border);border-left-width:5px;overflow:hidden}.tk-carte.tk-en-retard{border-left-color:var(--tk-retard)}.tk-carte.tk-bientot{border-left-color:var(--tk-bientot)}.tk-carte.tk-a-venir{border-left-color:var(--tk-avenir)}.tk-carte.tk-faite{border-left-color:var(--tk-fait);opacity:.6}.tk-carte.tk-ignoree{opacity:.45}.tk-carte.tk-chrono-actif{border-color:var(--ggk-orange-neon);box-shadow:0 0 0 1px var(--ggk-orange-neon) inset}.tk-carte-main{display:flex;align-items:stretch;gap:6px}.tk-bascule{flex:1 1;min-width:0;display:flex;align-items:flex-start;gap:10px;padding:10px 4px 10px 12px;border:none;background:none;cursor:pointer;font:inherit;text-align:left;color:inherit}.tk-bascule:disabled{cursor:wait}.tk-case{flex:none;width:24px;height:24px;border-radius:6px;margin-top:1px;border:2px solid var(--ggk-border);background:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:#fff;line-height:1}.tk-faite .tk-case{background:var(--tk-fait);border-color:var(--tk-fait)}.tk-ignoree .tk-case{background:var(--ggk-text-dim);border-color:var(--ggk-text-dim)}.tk-ident{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.tk-libelle{font-weight:600;font-size:15px;line-height:1.3}.tk-faite .tk-libelle,.tk-ignoree .tk-libelle{text-decoration:line-through}.tk-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px}.tk-meta,.tk-note{color:var(--ggk-text-dim)}.tk-note{font-size:12px;line-height:1.35}.tk-note-court{max-width:30ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.tk-heure{font-family:ui-monospace,monospace;font-weight:700;color:var(--ggk-text)}.tk-etat{font-weight:700;padding:1px 6px;border-radius:4px}.tk-etat-en_retard{background:#fee2e2;color:var(--tk-retard)}.tk-etat-bientot{background:#ffedd5;color:var(--tk-bientot)}.tk-etat-a_venir{display:none}.tk-duree{font-weight:600}.tk-mesure{font-weight:700;color:var(--ggk-primary)}.tk-ecartees{color:var(--ggk-warning);font-weight:700}.tk-par{font-style:italic}.tk-jours{font-family:ui-monospace,monospace;font-weight:700;letter-spacing:.08em}.tk-actions{display:flex;align-items:center;gap:4px;padding:6px 8px 6px 0;flex:none}.tk-actions .ggk-btn,.tk-actions a.ggk-btn{min-height:40px;min-width:40px;padding:6px 8px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.tk-btn-chrono{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.tk-btn-menu{color:var(--ggk-text-dim)!important;font-size:17px!important}.tk-btn-menu-ouvert{background:#eef2ff!important;color:var(--ggk-primary)!important}.tk-menu{border-top:1px dashed var(--ggk-border);background:#fcfcff;padding:10px 12px;gap:10px}.tk-menu,.tk-menu-bloc{display:flex;flex-direction:column}.tk-menu-bloc{gap:6px}.tk-menu-titre{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ggk-text-dim)}.tk-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tk-chip{font-size:12px!important;padding:8px 12px!important;min-height:40px}.tk-menu-actions{display:flex;flex-wrap:wrap;gap:6px}.tk-menu-actions .ggk-btn,.tk-menu-actions a.ggk-btn{min-height:42px;font-size:13px;text-decoration:none;display:inline-flex;align-items:center}.tk-ajout{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 4px}.tk-ajout-compact{margin:6px 0 0}.tk-ajout .ggk-btn{min-height:42px}.tk-ajout-note{font-size:11px;color:var(--ggk-text-dim);margin:4px 0 0}.tk-input{flex:1 1;min-width:140px;padding:8px 10px;border:1px solid var(--ggk-border);border-radius:8px;font-size:15px;font-family:inherit;color:var(--ggk-text);background:#fff;min-height:42px}.tk-input-court{flex:0 1 120px;min-width:90px}.tk-input-icone{flex:0 0 58px;min-width:58px;text-align:center}.tk-input-heure{flex:0 0 120px;min-width:110px}.tk-select{flex:0 1 190px}.tk-vide{color:var(--ggk-text-dim);font-size:14px;text-align:center;padding:32px 16px;line-height:1.5;display:flex;flex-direction:column;gap:10px;align-items:center}.tk-vide p{margin:0;max-width:52ch}.tk-etat-chargement{padding:24px 0}.tk-erreur{border-left:1px solid var(--ggk-danger);border:1px solid var(--ggk-danger);border-left-width:6px;border-radius:10px;padding:12px 14px;background:#fff5f5;margin-bottom:14px}.tk-erreur p{margin:4px 0 0;font-size:13px}.tk-err-texte{color:var(--ggk-danger)}.tk-haut{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px;margin-bottom:20px}.tk-haut-col{min-width:0;background:#fff;border:1px solid var(--ggk-border);border-radius:12px;padding:12px}@media (min-width:1180px){.tk-haut{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}}@media (min-width:980px) and (max-width:1179px){.tk-haut{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}}@media (min-width:660px) and (max-width:979px){.tk-haut{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.tk-aside-tete{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.tk-aside-titre{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ggk-text-dim)}.tk-tuiles{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}@media (min-width:900px){.tk-tuiles{grid-template-columns:1fr}}.tk-tuile{display:grid;grid-gap:0 8px;gap:0 8px;align-items:center;grid-template-columns:auto auto 1fr;grid-template-areas:"icone valeur libelle" "icone valeur app";padding:10px 12px;border-radius:10px;background:#fff;border-left:1px solid var(--ggk-border);border:1px solid var(--ggk-border);border-left-width:5px;text-decoration:none;color:var(--ggk-text)}.tk-tuile:hover{background:#f8f9ff}.tk-tuile-alerte{border-left-color:var(--ggk-warning)}.tk-tuile-echec{border-left-color:var(--ggk-danger);background:#fff5f5}.tk-tuile-icone{grid-area:icone;font-size:17px;line-height:1}.tk-tuile-valeur{grid-area:valeur;font-size:24px;font-weight:800;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tk-tuile-alerte .tk-tuile-valeur{color:var(--ggk-warning)}.tk-tuile-libelle{grid-area:libelle;font-weight:600;font-size:12px;line-height:1.25}.tk-tuile-app{grid-area:app;font-size:10px;font-weight:700;color:var(--ggk-primary)}.tk-tuiles-vide{padding:6px 2px}.tk-diag{margin-top:12px;font-size:11px;padding:8px 10px;border-left:3px solid var(--ggk-warning);background:#fffbf0;border-radius:0 6px 6px 0}.tk-diag ul{margin:6px 0;padding-left:16px}.tk-diag code{word-break:break-all}.tk-quoi{min-width:0}.tk-quoi-badge{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--ggk-primary);color:#fff;font-size:11px;font-weight:800}.tk-quoi-badge-alerte{background:var(--ggk-warning)}.tk-quoi-vide{margin:6px 0 0;font-size:12px;color:var(--ggk-text-dim)}.tk-quoi-souffrance{margin:6px 0 0;padding:6px 9px;border-radius:6px;background:#fffbf0;border-left:3px solid var(--ggk-warning);font-size:11px;line-height:1.4}.tk-quoi-liste{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.tk-quoi-item{border-radius:8px;border:1px solid var(--ggk-border);background:#fff}.tk-quoi-vieux{border-left:4px solid var(--ggk-warning);background:#fffdf7}.tk-quoi-lien{display:flex;gap:8px;align-items:flex-start;padding:8px 9px;text-decoration:none;color:var(--ggk-text)}.tk-quoi-lien:hover{background:#f8f9ff;border-radius:8px}.tk-quoi-icone{flex:none;font-size:15px;line-height:1.2}.tk-quoi-corps{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.tk-quoi-libelle{font-size:12px;font-weight:600;line-height:1.3}.tk-quoi-detail{font-size:11px;color:var(--ggk-text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-quoi-meta{display:flex;gap:8px;font-size:10px;color:var(--ggk-text-dim)}.tk-quoi-age{font-family:ui-monospace,monospace;font-weight:700}.tk-quoi-vieux .tk-quoi-age{color:#a5730a}.tk-quoi-par{font-weight:600}.tk-quoi-plus{margin-top:6px;background:none;border:none;padding:4px 0;cursor:pointer;font:inherit;font-size:11px;font-weight:700;color:var(--ggk-primary);text-decoration:underline;text-underline-offset:2px;min-height:30px}.tk-mauvaiscode{min-width:0}.tk-mc-actif .tk-aside-titre{color:var(--ggk-danger)}.tk-mc-badge{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--ggk-danger);color:#fff;font-size:11px;font-weight:800}.tk-mc-rien{margin:6px 0 0;font-size:12px;color:var(--ggk-text-dim);line-height:1.45}.tk-mc-liste{list-style:none;margin:8px 0 0;padding:0;gap:6px}.tk-mc-liste,.tk-mc-paire{display:flex;flex-direction:column}.tk-mc-paire{gap:3px;padding:8px 10px;border-radius:8px;background:#fff5f5;border:1px solid #f8d7da;border-left:4px solid var(--ggk-danger)}.tk-mc-moyenne{border-left-color:var(--ggk-warning);background:#fffbf2}.tk-mc-membre{display:flex;align-items:baseline;gap:6px;min-width:0}.tk-mc-membre code{font-family:ui-monospace,monospace;font-weight:800;font-size:13px;padding:1px 6px;border-radius:4px;background:var(--ggk-border);flex:none}.tk-mc-suspect code{background:#ffe0e0;color:#7f1d1d}.tk-mc-libelle{font-size:12px;color:var(--ggk-text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tk-mc-stock{font-family:ui-monospace,monospace;font-size:13px;font-weight:800;flex:none}.tk-mc-negatif{color:var(--ggk-danger)}.tk-mc-positif{color:var(--ggk-success)}.tk-mc-fleche{align-self:center;color:var(--ggk-text-dim);font-size:13px;transform:rotate(90deg)}.tk-mc-aide{margin:8px 0 0;font-size:11px;color:var(--ggk-text-dim);line-height:1.45}.tk-produits{min-width:0}.tk-produits-tete{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;padding:0;cursor:pointer;font:inherit;min-height:32px}.tk-produits-badge{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--ggk-primary);color:#fff;font-size:11px;font-weight:800}.tk-produits-chevron{margin-left:auto;color:var(--ggk-text-dim);font-size:12px}.tk-produits-resume{margin:6px 0 0;font-size:12px;color:var(--ggk-text-dim);line-height:1.45}.tk-produits-erreur{margin:6px 0 0;font-size:12px;color:var(--ggk-danger)}.tk-produits-filtre{margin:8px 0;font-size:12px}.tk-produits-liste{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.tk-produit{display:flex;gap:8px;align-items:flex-start;padding:7px 9px;border-radius:8px;background:#fff;border-left:1px solid var(--ggk-border);border:1px solid var(--ggk-border);border-left-width:4px}.tk-produit-cree{border-left-color:var(--ggk-primary)}.tk-produit-reactive{border-left-color:var(--ggk-success)}.tk-produit-type{flex:none;font-size:9px;font-weight:800;letter-spacing:.04em;padding:2px 5px;border-radius:4px;margin-top:1px}.tk-produit-cree .tk-produit-type{background:#eef2ff;color:var(--ggk-primary)}.tk-produit-reactive .tk-produit-type{background:#e8f5e9;color:#2e7d32}.tk-produit-corps{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.tk-produit-libelle{font-size:12px;font-weight:600;line-height:1.3}.tk-produit-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:10px;color:var(--ggk-text-dim)}.tk-produit-code{font-family:ui-monospace,monospace;font-size:10px}.tk-produit-fel{font-weight:800;color:#2e7d32}.tk-produit-pesable{font-weight:700}.tk-produits-attente{margin:10px 0 0;padding:8px 10px;border-radius:6px;background:#fffbf0;border-left:3px solid var(--ggk-warning);font-size:11px;line-height:1.45}.tk-messages{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.tk-message{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--ggk-border);border-left:5px solid var(--tk-avenir)}.tk-msg-info{border-left-color:var(--ggk-primary)}.tk-msg-important{border-left-color:var(--ggk-warning);background:#fffbf2}.tk-msg-urgent{border-left-color:var(--ggk-danger);background:#fff5f5;animation:tk-pulse-urgent 2s ease-in-out infinite}@keyframes tk-pulse-urgent{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px rgba(244,67,54,.14)}}.tk-msg-icone{flex:none;font-size:17px;line-height:1.3}.tk-msg-corps{flex:1 1;min-width:0}.tk-msg-outils{display:flex;align-items:center;justify-content:space-between;gap:10px}.tk-msg-outils button{border:0;background:transparent;color:var(--ggk-primary);font:inherit;font-size:11px;font-weight:750;cursor:pointer}.tk-msg-entete{display:flex;gap:8px;align-items:center;margin:0 0 5px;font-size:11px}.tk-msg-entete time{color:var(--ggk-text-dim)}.tk-msg-texte{margin:0;font-size:14px;font-weight:500;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.tk-msg-vues{display:flex;flex-wrap:wrap;gap:4px}.tk-msg-vues button{display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;border-radius:999px;padding:4px 10px;min-height:32px}.tk-msg-vues button[aria-pressed=true]{border-color:var(--ggk-border);background:color-mix(in srgb,var(--ggk-primary,#667eea) 12%,transparent)}.tk-msg-compte{display:inline-block;min-width:17px;padding:0 5px;border-radius:999px;background:var(--ggk-primary,#667eea);color:#fff;font-size:10px;line-height:17px;text-align:center}.tk-msg-vide{margin:0;font-size:12px;color:var(--ggk-text-dim)}.tk-msg-malecture{margin:7px 0 0;font-size:10px;font-weight:750;color:#176b3b}.tk-msg-meta{margin:3px 0 0;display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--ggk-text-dim)}.tk-msg-auteur,.tk-msg-source{font-weight:700}.tk-msg-source{padding:0 5px;border-radius:4px;background:#eef2ff;color:var(--ggk-primary)}.tk-msg-nature{font-weight:900;color:var(--ggk-text);text-transform:uppercase;letter-spacing:.05em}.tk-msg-lectures{margin:7px 0 0;font-size:10px;color:var(--ggk-text-dim)}.tk-msg-validation{display:flex;align-items:stretch;gap:7px;margin-top:9px}.tk-msg-validation button{border:1px solid var(--ggk-border);border-radius:8px;background:#fff;color:var(--ggk-text);font:inherit;font-size:10px;font-weight:750;padding:7px 9px;cursor:pointer}.tk-msg-validation .tk-msg-realiser{flex:1 1;background:#fff8e2;border-color:#dc9b25;color:#754509}.tk-msg-fait{position:absolute;right:10px;top:10px;border:2px solid #31925a;border-radius:5px;padding:4px 7px;background:#e8f8ee;color:#176b3b;font-size:10px;font-weight:900;text-transform:uppercase;transform:rotate(-3deg)}.tk-msg-archive{position:relative;opacity:.78}.tk-msg-actions{flex:none;display:flex;gap:4px}.tk-msg-ajout{align-self:flex-start;border:1px dashed var(--ggk-border);background:transparent;color:var(--ggk-text-dim);font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;cursor:pointer;min-height:40px}.tk-msg-ajout:hover{border-color:var(--ggk-primary);color:var(--ggk-primary);background:#f8f9ff}.tk-msg-form{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:10px;background:#fff;border:1px solid var(--ggk-primary)}.tk-textarea{resize:vertical;line-height:1.45;font-family:inherit;width:100%}.tk-msg-form-bas{flex-wrap:wrap;gap:12px}.tk-msg-duree,.tk-msg-form-bas{display:flex;align-items:center}.tk-msg-duree{gap:6px;font-size:12px;color:var(--ggk-text-dim)}.tk-msg-duree select{min-height:40px;border:1px solid var(--ggk-border);border-radius:9px;background:#fff;color:var(--ggk-text);padding:6px 9px;font:inherit}.tk-msg-form-boutons{display:flex;gap:6px;margin-left:auto}.tk-chip-niveau{border:1px solid var(--ggk-border);background:#fff;color:var(--ggk-text-dim);font:inherit;font-size:12px;font-weight:600;padding:8px 12px;border-radius:999px;cursor:pointer;min-height:40px}.tk-chip-niveau.actif{background:var(--ggk-primary);border-color:var(--ggk-primary);color:#fff}.tk-chantiers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tk-chantier{background:#fff;border-radius:10px;border:1px solid var(--ggk-border);border-left:5px solid var(--ggk-text-dim);overflow:hidden}.tk-chantier.tk-pret.tk-p1{border-left-color:var(--ggk-danger)}.tk-chantier.tk-pret.tk-p2{border-left-color:var(--ggk-warning)}.tk-chantier.tk-pret.tk-p3,.tk-chantier.tk-pret.tk-p4,.tk-chantier.tk-pret.tk-p5{border-left-color:var(--ggk-primary)}.tk-chantier.tk-bloque{border-left-color:var(--ggk-border);background:#fbfbfd}.tk-chantier-fini{opacity:.5}.tk-chantier-fini .tk-libelle{text-decoration:line-through}.tk-chantier-tete{display:flex;align-items:center;gap:8px;padding:8px 10px}.tk-chantier-etat{flex:none;font-size:10px;font-weight:800;letter-spacing:.06em;padding:3px 7px;border-radius:5px;background:var(--ggk-border);color:var(--ggk-text-dim)}.tk-chantier-pret{background:#e0e7ff;color:var(--ggk-primary)}.tk-chantier-titre{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px;border:none;background:none;padding:0;font:inherit;text-align:left;color:inherit;cursor:pointer}.tk-prio{font-weight:800}.tk-domaine{font-weight:700;padding:1px 6px;border-radius:4px;background:#eef2ff;color:var(--ggk-primary)}.tk-bloqueur{color:var(--ggk-warning);font-weight:600}.tk-debloque{font-weight:700;color:var(--ggk-primary)}.tk-statut-select{flex:none;padding:6px 8px;border-radius:8px;border:1px solid var(--ggk-border);background:#fff;font:inherit;font-size:12px;min-height:38px;color:var(--ggk-text)}.tk-chantier-detail{border-top:1px dashed var(--ggk-border);background:#fcfcff;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.tk-chantier-impact,.tk-chantier-texte{margin:0;font-size:13px;line-height:1.45}.tk-chantier-impact{color:var(--ggk-text-dim)}.tk-chantier-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.tk-chantier-actions .ggk-btn{min-height:42px;text-decoration:none;display:inline-flex;align-items:center}.tk-btn-suppr{color:var(--ggk-danger)!important;border-color:#f8d7da!important}.tk-config-intro{margin-bottom:14px}.tk-config-liste{background:#fff;border:1px solid var(--ggk-border);border-radius:12px;padding:10px 12px;margin-bottom:12px}.tk-inactif{opacity:.55}.tk-config-tete{margin-bottom:8px}.tk-config-tete,.tk-config-titre{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tk-config-titre{flex:1 1;font-size:15px}.tk-config-actions{display:flex;align-items:center;gap:6px}.tk-config-edit-liste{display:flex;gap:6px;flex-wrap:wrap;width:100%}.tk-btn-mini{padding:4px 10px!important;font-size:13px!important;min-height:38px}.tk-config-modeles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.tk-config-modele{border-top:1px solid var(--ggk-border)}.tk-config-ligne{display:flex;align-items:center;gap:8px;padding:6px 0}.tk-fleches{display:flex;flex-direction:column;gap:2px;flex:none}.tk-fleche{width:30px;height:22px;border-radius:5px;border:1px solid var(--ggk-border);background:#fff;cursor:pointer;font-size:11px;line-height:1;color:var(--ggk-text-dim)}.tk-fleche:disabled{opacity:.3;cursor:default}.tk-config-nom{flex:1 1;min-width:0;gap:2px;border:none;background:none;padding:0;font:inherit;text-align:left;color:inherit;cursor:pointer}.tk-config-detail,.tk-config-nom{display:flex;flex-direction:column}.tk-config-detail{gap:8px;padding:10px 0 12px;border-top:1px dashed var(--ggk-border)}.tk-champ{display:flex;flex-direction:column;gap:4px}.tk-champ>span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ggk-text-dim)}.tk-champ-duo{display:flex;gap:8px;flex-wrap:wrap}.tk-aide{font-size:11px;color:var(--ggk-text-dim);margin:0;line-height:1.4}.tk-jours-choix{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.tk-jour{width:38px;height:38px;border-radius:8px;border:1px solid var(--ggk-border);background:#fff;color:var(--ggk-text-dim);font:inherit;font-weight:700;cursor:pointer}.tk-jour-actif{background:var(--ggk-primary);border-color:var(--ggk-primary);color:#fff}.tk-modal{position:fixed;inset:0;z-index:950;background:rgba(20,20,40,.55);display:flex;align-items:flex-end;justify-content:center}.tk-modal-inner{background:#fff;width:100%;max-width:460px;max-height:92vh;overflow-y:auto;border-radius:16px 16px 0 0;padding:16px;display:flex;flex-direction:column;gap:14px}@media (min-width:640px){.tk-modal{align-items:center}.tk-modal-inner{border-radius:16px}}.tk-modal-checker{text-align:center}.tk-modal-tete{display:flex;align-items:center;justify-content:center;position:relative}.tk-modal-tete .tk-btn-mini{position:absolute;right:0;top:0}.tk-noms{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.tk-nom{font-size:16px!important;padding:12px 20px!important;min-height:48px}.tk-toast{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:900;max-width:calc(100vw - 32px);padding:10px 12px 10px 18px;border-radius:10px;color:#fff;font-weight:600;font-size:14px;box-shadow:0 6px 24px rgba(0,0,0,.28);animation:tk-toast-in .22s ease;display:flex;align-items:center;gap:12px}.tk-toast-msg{cursor:pointer}.tk-toast-annuler{flex:none;min-height:34px;padding:6px 12px;border-radius:6px;border:1.5px solid rgba(255,255,255,.7);background:rgba(255,255,255,.14);color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}@keyframes tk-toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:620px){.tk-tete{flex-direction:column;align-items:stretch}.tk-version{text-align:right}}@media (prefers-reduced-motion:reduce){.check-progress-fill,.ggk-btn-processing,.tk-toast{animation:none;transition:none}}.tk-fel-encart{margin:8px 0 14px;padding:10px;border-radius:10px;background:#f1fbf3;border:1px solid #cfe9d6;border-left:4px solid var(--tk-fait)}.tk-fel-titre{margin:0 0 6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#2e7d32}.tk-fel-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.tk-fel-item{display:flex;gap:8px;align-items:baseline;padding:6px 8px;border-radius:7px;background:#fff;border:1px solid #cfe9d6}.tk-fel-premiere{border-style:dashed}.tk-fel-code{flex:none;font-family:ui-monospace,monospace;font-weight:800;font-size:12px;padding:1px 6px;border-radius:4px;background:#dff3e4;color:#1b5e20}.tk-fel-corps{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.tk-fel-libelle{font-size:12px;font-weight:600;line-height:1.3}.tk-fel-meta{font-size:10px;color:#2e7d32;font-weight:600}.tk-fel-aide{margin:8px 0 0;font-size:10px;color:var(--ggk-text-dim);line-height:1.45}.tk-produits-soustitre{margin:0 0 6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ggk-text-dim)}.tk-fel-titre{display:flex;align-items:center;gap:6px}.tk-fel-relire{margin-left:auto}.tk-signalement{display:flex;flex-direction:column;gap:8px;padding:12px 14px;margin-top:12px;background:var(--ggk-surface,#fff);border-radius:10px;border-left:3px solid var(--ggk-warning,#ff9800)}.tk-signalement-tete{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.tk-signalement-note{margin:0;padding:8px 12px;border-radius:8px;background:rgba(0,0,0,.04);font-style:italic}.tk-signalement button{align-self:flex-start}.tk-etiquettes{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:16px;background:var(--ggk-surface,#fff);border-radius:12px;border-left:3px solid var(--ggk-primary,#667eea)}.tk-etiquettes-tete{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.tk-etiquettes-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tk-etiquettes-liste li{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.tk-etiquettes-liste strong{flex:1 1 14em}.tk-etiquettes-liste code{font-size:12px;color:var(--ggk-text-dim,#666)}.tk-etiquettes-bloc pre{margin:8px 0 4px;padding:10px 12px;background:#0f1226;color:#cfe3ff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;border-radius:8px;max-height:260px;overflow:auto;white-space:pre;-webkit-user-select:all;-moz-user-select:all;user-select:all}.tk-etiquettes-bloc summary{font-size:13px;cursor:pointer}.tk-temoin{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:6px 10px;border-radius:8px;background:#fff;border:1px solid var(--ggk-border);font-size:12px;color:var(--ggk-text-dim)}.tk-temoin-vide{margin-bottom:20px}.tk-temoin-txt strong{color:var(--ggk-text);font-weight:700}.tk-temoin-sep{color:var(--ggk-border)}.tk-temoin-btn{margin-left:auto}.tk-temoin-point{flex:none;width:8px;height:8px;border-radius:50%}.tk-temoin-vert{background:var(--tk-fait)}.tk-temoin-orange{background:var(--tk-bientot)}.tk-temoin-rouge{background:var(--tk-retard)}.tk-temoin-inconnu{background:var(--tk-avenir)}.tk-temoin-note{margin:-4px 0 10px;font-size:11px;color:var(--ggk-text-dim);line-height:1.45}.tk-lecture-rouge{border-left:4px solid var(--tk-retard);background:color-mix(in srgb,var(--tk-retard) 7%,var(--ggk-surface,#fff))}.tk-lecture-orange{border-left:4px solid var(--tk-bientot)}.tk-lecture .tk-aside-titre{display:flex;align-items:center;gap:8px}.tk-lecture-details{margin:0;padding-left:18px;font-size:13px;line-height:1.55}.tk-lecture-afaire{margin:0;font-size:13.5px;font-weight:600}.tk-lecture-lien{margin:0;font-size:13px}.tk-destock-avis{margin:6px 0 10px;font-size:12px;color:var(--ggk-primary)}.tk-destock-refus{flex:1 0 100%;margin-top:2px;font-size:11.5px;line-height:1.45;color:var(--ggk-danger)}.tk-robot{border-left-color:var(--ggk-border)}.tk-robot-liste code{opacity:.75}.tk-robot-fait .subtitle{color:var(--tk-fait)}.tk-robot-encours .subtitle{color:var(--ggk-text-dim)}.tk-robot-refuse .subtitle{color:var(--ggk-danger)}.tk-stock-file{margin-top:1.5rem}.tk-stock-file-tete{margin-bottom:.75rem}.tk-stock-file-tete h2{margin:0 0 .25rem}.tk-btn-supprimer{color:var(--ggk-danger);margin-left:auto}.tk-sig{border-left-color:var(--ggk-primary,#667eea)}.tk-sig-statut{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px}.tk-sig-vignettes{display:flex;gap:8px;flex-wrap:wrap}.tk-sig-vignette{display:block;height:110px;border-radius:8px;border:1px solid var(--ggk-border);overflow:hidden;background:#fff}.tk-sig-vignette img{height:100%;width:auto;display:block}.tk-sig-vignette-vide{display:grid;place-items:center;width:120px;font-size:12px;color:var(--ggk-text-dim)}.tk-sig-reponse{margin:0;padding:8px 12px;border-radius:8px;background:#eef2ff;border-left:3px solid var(--ggk-primary,#667eea)}.tk-sig-reponse small{display:block;color:var(--ggk-text-dim);margin-top:4px}.tk-sig-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tk-sig textarea{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:8px;border:1px solid var(--ggk-border);font:inherit;font-size:15px}.tk-etiq-gesko{border-left-color:var(--ggk-warning,#d97706)}.tk-etiq-gesko .tk-temoin-point{display:inline-block;vertical-align:middle}.tk-manager{margin-bottom:16px;padding:12px 14px;background:var(--dash-surface,#fff);border:1px solid var(--ggk-border);border-left:4px solid var(--ggk-primary,#667eea);border-radius:12px}.tk-manager-tete{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-bottom:10px}.tk-manager-tete h2{font-size:16px}.tk-manager-grille{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}@media (min-width:720px){.tk-manager-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1180px){.tk-manager-grille{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}}.tk-manager-tuile{min-width:0;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--ggk-border);border-radius:10px;background:var(--dash-surface-2,#f8f9ff)}.tk-manager-tuile h3{margin:0;font-size:13px;letter-spacing:.02em;color:var(--ggk-text-dim);text-transform:uppercase}.tk-manager-liste{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.tk-manager-liste li{display:flex;justify-content:space-between;gap:8px;font-size:14px}.tk-manager-liste li span{color:var(--ggk-text-dim);white-space:nowrap}.tk-manager-retards li strong{color:var(--tk-retard)}.tk-manager-chiffre{margin:0;font-size:14px}.tk-manager-chiffre strong{font-size:26px;line-height:1;margin-right:4px}.tk-manager-tuile .ggk-btn{align-self:flex-start;min-height:40px}.tk-manager-mdp{margin-bottom:16px;padding:12px 14px;background:var(--dash-surface,#fff);border:1px solid var(--ggk-border);border-left:4px solid var(--ggk-primary,#667eea);border-radius:12px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.tk-manager-mdp-tete h2{font-size:16px;margin-bottom:4px}.tk-manager-mdp .ggk-mdp{width:100%;max-width:420px;margin-top:0}.tk-manager-mdp .ggk-btn{min-height:44px}.tk-modal-checker .ggk-mdp{margin-top:0}.tk-pt-page{box-sizing:border-box;width:100%;max-width:760px;margin:0 auto;padding:14px 16px 48px;display:flex;flex-direction:column;gap:14px}.tk-pt-page h1{margin:0;font-size:24px;line-height:1.2}.tk-pt-page h2{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:18px}.tk-pt-intro{margin:0;font-size:15px;line-height:1.45;color:var(--ggk-text-dim,#555)}.tk-pt-form,.tk-pt-liste,.tk-pt-manager{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--ggk-border,#ddd);border-radius:14px;background:var(--dash-surface,#fff)}.tk-pt-groupe{margin:0;padding:0;border:0;min-width:0}.tk-pt-groupe legend{margin-bottom:6px;padding:0;font-size:14px;font-weight:700}.tk-pt-choix{display:flex;flex-wrap:wrap;gap:8px}.tk-pt-puce{min-height:44px;padding:8px 14px;border:1px solid var(--ggk-border,#d6d6d6);border-radius:999px;background:var(--dash-surface,#fff);color:var(--ggk-text,#111);font:inherit;font-size:15px;cursor:pointer}.tk-pt-puce[aria-pressed=true]{border-color:var(--ggk-primary,#0f4c5c);background:var(--ggk-primary,#0f4c5c);color:#fff;font-weight:700}.tk-pt-date,.tk-pt-filtres select,.tk-pt-heures input,.tk-pt-note{box-sizing:border-box;min-height:44px;padding:8px 10px;border:1px solid var(--ggk-border,#d6d6d6);border-radius:10px;background:var(--dash-surface,#fff);color:var(--ggk-text,#111);font:inherit;font-size:16px}.tk-pt-note{width:100%;resize:vertical}.tk-pt-heures{display:flex;flex-wrap:wrap;gap:12px}.tk-pt-filtres label,.tk-pt-heures label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700;color:var(--ggk-text-dim,#555)}.tk-pt-aide{margin:4px 0 0;font-size:13px;color:var(--ggk-text-dim,#666)}.tk-pt-envoyer{align-self:flex-start;min-height:48px;padding:10px 20px;font-size:16px}.tk-pt-erreur{border-left:4px solid var(--ggk-danger,#b3261e);background:var(--dash-danger-bg,#fff5f5)}.tk-pt-erreur,.tk-pt-ok{margin:0;padding:10px 12px;border-radius:8px;font-size:14px}.tk-pt-ok{border-left:4px solid #1e7a3c;background:#effaf2}.tk-pt-liste ul,.tk-pt-personne ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tk-pt-ligne{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:6px 12px;gap:6px 12px;padding:10px 0;border-top:1px solid var(--ggk-border,#eee)}.tk-pt-quand{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:14px;font-weight:700;white-space:nowrap}.tk-pt-quoi{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:15px;overflow-wrap:anywhere}.tk-pt-quoi small{font-size:13px;color:var(--ggk-text-dim,#666)}.tk-pt-reponse{color:var(--ggk-primary,#0f4c5c)!important}.tk-pt-statut{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.tk-pt-statut-afaire{background:#fff4d6;color:#7a4d00}.tk-pt-statut-fait{background:#e3f6e8;color:#1e6b36}.tk-pt-statut-refus{background:#fde8e7;color:#9b1c1c}.tk-pt-statut-annule{background:#eee;color:#555;text-decoration:line-through}.tk-pt-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.tk-pt-fait{border:0;border-radius:10px;background:#1e7a3c;color:#fff;font:inherit;font-size:14px;font-weight:700}.tk-pt-fait,.tk-pt-mini{min-height:40px;padding:6px 12px;cursor:pointer}.tk-pt-mini{border:1px solid var(--ggk-border,#d6d6d6);border-radius:10px;background:transparent;color:var(--ggk-text,#111);font:inherit;font-size:13px}.tk-pt-fait:disabled,.tk-pt-mini:disabled{opacity:.55;cursor:wait}.tk-pt-compte{padding:2px 10px;border-radius:999px;background:#fff4d6;color:#7a4d00;font-size:13px}.tk-pt-filtres{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.tk-pt-case{flex-direction:row!important;align-items:center;min-height:44px}.tk-pt-personne h3{margin:10px 0 4px;font-size:16px}.tk-pt-personne h3 small{font-size:13px;font-weight:500;color:var(--ggk-text-dim,#666)}.tk-pt-recap pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;padding:10px;border-radius:10px;background:var(--dash-surface-2,#f4f4f2);font-size:13px}@media (max-width:560px){.tk-pt-ligne{grid-template-columns:1fr auto}.tk-pt-actions,.tk-pt-quand{grid-column:1/-1}.tk-pt-actions{justify-content:flex-start}}