mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-14 02:38:20 +02:00
Refonte : modèle chargé, attribution, ombres, flèche, favicon
Retours sur la refonte, cinq corrections. Modèle affiché Le sélecteur de l'en-tête ne montrait que le PRESET actif — or un preset n'est « actif » que si son empreinte correspond exactement à la configuration. Une configuration écrite à la main, héritée de l'image ou modifiée d'un cran depuis le dernier preset n'en désigne aucun, et l'en-tête restait muet alors qu'un modèle tournait. Il retombe désormais sur le nom du fichier de la configuration active (loadCfg le lui donne), et l'infobulle porte le chemin complet. Attribution « fork de AJEAN » revient sous le nom de l'app, dans l'en-tête de la barre latérale, au lieu du pied de la zone défilante. Ombres Les bulles du fil et la carte de saisie portent une vraie ombre douce (--shadow-card), comme la maquette — le filet de 1 px ne les décollait pas du fond. Bouton d'envoi Chevron sauge sur fond transparent, à la place de la pastille verte pleine : c'est le dessin de la maquette, et il suit alors la même charte que ses voisins (dépôt, fichiers). Favicon Carré sauge (#5E7F5A) au lieu du carré noir, aux quatre endroits qui le dessinent : favicon SVG, icône d'accueil iOS, icône du .exe (icon.ico) et PNG macOS — tous rendus depuis sys_brand_icon.go, seule source du dessin. La variante « template » de macOS reste noire : le système ne lit que son alpha. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LPyFxVHNAN9u5pVzSYMwjd
This commit is contained in:
8 files changed
+152
-63
No files matched your search
@@ -35,7 +35,8 @@
|
||||
--ok:#5e7f5a;--warn:#a86a2a;--err:#c0503f;--mag:#a86a2a;
|
||||
--code-bg:#f4f6f5;--danger-bg:#faeae7;--warn-bg:#f7f0e5;
|
||||
--add:#5e7f5a;--add-bg:rgba(94,127,90,.11);--del:#c0503f;--del-bg:rgba(192,80,63,.12);
|
||||
--shadow:0 1px 2px rgba(15,23,42,.05);--shadow-lift:0 4px 16px rgba(15,23,42,.08)}
|
||||
--shadow:0 1px 2px rgba(15,23,42,.05);--shadow-lift:0 4px 16px rgba(15,23,42,.08);
|
||||
--shadow-card:0 2px 10px rgba(15,23,42,.07),0 1px 3px rgba(15,23,42,.05)}
|
||||
/* « Deep Dark » : fond #0F172A, cartes #1E293B. */
|
||||
[data-theme="dark"]{color-scheme:dark;
|
||||
--bg:#0f172a;--panel:#1e293b;--bubble:#1e293b;--border:rgba(148,163,184,.17);
|
||||
@@ -46,7 +47,8 @@
|
||||
--ok:#8fb08c;--warn:#d9a55f;--err:#e0705c;--mag:#d9a55f;
|
||||
--code-bg:#131c2f;--danger-bg:#3a1f1c;--warn-bg:#33291b;
|
||||
--add:#8fb08c;--add-bg:rgba(143,176,140,.16);--del:#e0705c;--del-bg:rgba(224,112,92,.16);
|
||||
--shadow:none;--shadow-lift:0 4px 16px rgba(0,0,0,.35)}
|
||||
--shadow:none;--shadow-lift:0 4px 16px rgba(0,0,0,.35);
|
||||
--shadow-card:0 2px 12px rgba(0,0,0,.30),0 1px 3px rgba(0,0,0,.22)}
|
||||
/* Safari iOS peint un rectangle gris/noir sur TOUT élément touché (bouton, lien,
|
||||
résumé de section, bulle repliable…). C'est un retour tactile par défaut, hors
|
||||
de notre charte et impossible à styler : on le coupe. Nos états :active/:focus
|
||||
@@ -1570,12 +1572,12 @@ button:active:not(:disabled){transform:translateY(1px)}
|
||||
nu flotte sans ancrage, et la frontière entre deux réponses se perd. */
|
||||
#chat{padding-top:22px}
|
||||
#chat .msg.assistant{background:var(--bubble);border:1px solid var(--border);
|
||||
border-radius:16px;padding:14px 18px;max-width:100%;box-shadow:var(--shadow)}
|
||||
border-radius:16px;padding:14px 18px;max-width:100%;box-shadow:var(--shadow-card)}
|
||||
#chat .msg.assistant.errmsg{background:var(--danger-bg);border-color:color-mix(in srgb,var(--err) 45%,transparent)}
|
||||
/* Question : aplat de sauge, coin bas-droit rentré. --on-accent garantit le
|
||||
contraste dans les DEUX variantes. */
|
||||
#chat .msg.user{background:var(--accent);color:var(--on-accent);border-radius:18px 18px 6px 18px;
|
||||
padding:11px 16px;max-width:75%}
|
||||
padding:11px 16px;max-width:75%;box-shadow:var(--shadow-card)}
|
||||
#chat .msg.user .label{color:var(--on-accent);opacity:.75}
|
||||
#chat .msg.user .body a{color:var(--on-accent);text-decoration:underline}
|
||||
#chat .msg.user code{background:rgba(255,255,255,.18);color:inherit}
|
||||
@@ -1592,13 +1594,16 @@ button:active:not(:disabled){transform:translateY(1px)}
|
||||
#send,#stop{width:34px;height:34px;min-height:34px;padding:0;border-radius:999px;
|
||||
display:inline-flex;align-items:center;justify-content:center;flex:none}
|
||||
#send svg,#stop svg{display:block}
|
||||
#send:hover:not(:disabled){opacity:1;transform:none;background:color-mix(in srgb,var(--accent) 85%,var(--text))}
|
||||
#send{background:transparent;border-color:transparent;color:var(--accent)}
|
||||
#send:hover:not(:disabled){opacity:1;transform:none;background:var(--accent-bg);color:var(--accent)}
|
||||
#send:active:not(:disabled){transform:scale(.92)}
|
||||
#stop:hover{opacity:1;background:color-mix(in srgb,var(--err) 85%,var(--text))}
|
||||
#send:disabled{background:transparent;color:var(--dim)}
|
||||
#stop{background:transparent;border-color:transparent;color:var(--err)}
|
||||
#stop:hover{opacity:1;background:var(--danger-bg);color:var(--err)}
|
||||
/* Les outils de la saisie (joindre, fichiers, envoyer) montent DANS la pilule,
|
||||
à droite du texte : c'est là qu'on les cherche, et le pied de carte redevient
|
||||
ce qu'il doit être — une jauge de contexte, rien d'autre. */
|
||||
#inputbar{align-items:flex-end;padding:8px 8px 8px 18px;gap:4px;box-shadow:var(--shadow)}
|
||||
#inputbar{align-items:flex-end;padding:8px 8px 8px 18px;gap:4px;box-shadow:var(--shadow-card)}
|
||||
#composer:focus-within #inputbar,#composer:focus-within #ctxmeta{border-color:var(--accent-soft)}
|
||||
#inputbar #attach,#inputbar #files-btn{width:34px;height:34px;min-height:34px;border-radius:999px;
|
||||
align-self:center}
|
||||
@@ -1670,3 +1675,6 @@ button:active:not(:disabled){transform:translateY(1px)}
|
||||
garde-fou de largeur (contrairement à .pe-row-c) : une valeur très longue —
|
||||
un chemin de destination, par exemple — débordait sous l'intitulé. */
|
||||
.pe-row>.pe-selc{max-width:62%}
|
||||
/* Marque et attribution du fork empilées, pastille d'état à leur droite. */
|
||||
.sidebrand{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
|
||||
.sidebrand .brand-fork{margin:0;font-size:10px;line-height:1.3}
|
||||
Reference in new issue
Block a user