:root{--ink:#14283f;--accent:#5aa5e8;--blue:#2e75b6;--blue-deep:#16365f;--blue-pale:#eaf4fd;--paper:#fff;--muted:#526278;--line:#cbd4de;--surface:#f0f3f6;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.6;background:#fff}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5aa5e8;outline-offset:4px}.skip{position:fixed;left:15px;top:-100px;background:var(--blue);color:#fff;padding:10px;z-index:20}.skip:focus{top:10px}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.09em;line-height:1.6}.brand{display:inline-flex;align-items:center;text-decoration:none;font-weight:800;font-size:2.4rem;letter-spacing:-.07em;line-height:1}.brand-point{color:var(--accent)}.brand small{font-size:1rem;letter-spacing:0;font-weight:500;padding-left:17px;margin-left:20px;border-left:1px solid #6b7b8e;line-height:1.6}.login-layout{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}.login-aside{background:linear-gradient(145deg,#102b4d,#1e4e82);color:#fff;padding:40px 52px;display:flex;flex-direction:column;justify-content:space-between;gap:70px}.login-aside a:focus-visible{outline-color:#8bc8ff}.login-manifesto{margin-block:auto;max-width:530px;padding-block:36px}.login-manifesto .eyebrow{color:#8bc8ff;margin:0 0 30px}.login-manifesto h1{font-size:clamp(3.2rem,5.6vw,5.5rem);line-height:1.04;letter-spacing:-.055em;font-weight:650;margin:0 0 32px}.login-manifesto h1 span{color:#8bc8ff}.login-manifesto>p:last-child{font-size:1.08rem;max-width:390px;color:#d1dce6;line-height:1.7;margin:0}.login-aside-foot{display:flex;justify-content:space-between;gap:20px;font-size:.65rem;letter-spacing:.07em;border-top:1px solid #52759b;padding-top:22px}.login-main{display:flex;flex-direction:column;padding:38px 52px;gap:60px;min-width:0}.back-link{text-decoration:none;font-size:.875rem;width:fit-content;min-height:44px;display:flex;align-items:center}.back-link:hover{text-decoration:underline;text-underline-offset:5px}.login-content{width:min(400px,100%);margin:auto}.login-content>.eyebrow{color:var(--muted);margin:0 0 15px}.login-content h2{font-size:3.5rem;letter-spacing:-.06em;line-height:1.05;margin:0 0 20px;font-weight:650}.login-intro{color:var(--muted);margin:0 0 36px;line-height:1.6}#login-form label{display:block;font-size:.875rem;font-weight:600;margin:0 0 9px}#login-form input{display:block;width:100%;border:1px solid #8999ab;border-radius:2px;padding:12px 14px;min-height:54px;background:#fff;color:var(--ink);font-size:1rem}#identifier{margin-bottom:23px}.password-field{position:relative}.password-field input{padding-right:86px!important}.password-field button{position:absolute;right:5px;top:5px;bottom:5px;border:0;background:transparent;padding:0 12px;font-size:.8rem;color:var(--ink)}.password-field button:hover{background:var(--surface)}.primary-button{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:54px;background:var(--blue-deep);color:#fff;border:1px solid var(--blue-deep);border-radius:2px;padding:13px 18px;font-weight:600;font-size:1rem}#login-submit{width:100%;margin-top:27px}.primary-button:hover:not(:disabled){background:#28679e}.primary-button>span{font-size:1.3rem}.login-access-note{font-size:.8rem;color:var(--muted);margin:13px 0 0;text-align:center}.form-error{border-left:3px solid #ab2939;background:#fff2f2;color:#8b2132;padding:12px 14px;font-size:.875rem;line-height:1.6;margin:20px 0 0}.form-error[hidden]{display:none}.login-help{font-size:.875rem;margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.login-help summary{cursor:pointer;min-height:40px}.login-help p{color:var(--muted);margin:6px 0 0}.login-help a{text-underline-offset:3px}.login-footer{margin:0;font-size:.75rem;color:var(--muted)}
/* The authenticated workspace shares the login identity. */
.workspace{background:var(--surface)}.workspace header{background:#fff;border-bottom:1px solid var(--line);padding:22px max(24px,calc((100vw - 1120px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center}.workspace .brand-point{color:var(--ink)}.workspace .brand{font-size:2rem}.account-controls{display:flex;align-items:center;gap:20px;font-size:.875rem}.account-controls button{background:none;border:1px solid var(--line);padding:8px 12px;min-height:44px}.workspace main{width:min(920px,calc(100% - 48px));margin:45px auto}.workspace h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.055em;line-height:1.1;margin:15px 0 22px;font-weight:650}.workspace .intro{max-width:720px;color:var(--muted);margin-bottom:27px}.workspace .corpus{padding:15px 18px;border-left:3px solid var(--ink);background:#e1e8ee;font-size:.875rem}.corpus strong{display:block}.status{font-size:.875rem;color:var(--muted);min-height:24px}.examples{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.examples button{border:1px solid #a8b5c4;background:#fff;padding:10px 13px;font-size:.875rem;min-height:44px;text-align:left;border-radius:2px}.examples button:hover{background:var(--accent)}#log{display:flex;flex-direction:column;gap:20px;padding:10px 0}.msg{padding:20px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;max-width:90%}.user{align-self:flex-end;background:var(--ink);color:#fff}.bot{align-self:flex-start;background:#fff;border:1px solid var(--line)}.meta{font-size:.875rem;margin-top:17px;border-top:1px solid var(--line);padding-top:12px;color:var(--muted)}.chip{display:inline-block;border:1px solid var(--line);padding:1px 8px;margin:3px;font-size:.75rem}.workspace form{padding-top:24px;margin-top:15px;border-top:1px solid var(--line)}.workspace label{display:block;font-size:.875rem;font-weight:600;margin-bottom:10px}.input-row{display:flex;gap:12px}.workspace textarea{min-width:0;flex:1;resize:vertical;padding:15px;border:1px solid #8999ab;background:#fff;color:var(--ink);min-height:110px;border-radius:2px}#send{background:var(--ink);color:#fff;border:0;padding:15px 23px;align-self:flex-end;min-height:54px;font-weight:600}.note{font-size:.875rem;color:var(--muted);margin:15px 0}.workspace footer{display:flex;justify-content:space-between;gap:20px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:.875rem}#clear{background:none;border:0;text-decoration:underline;padding:0;color:var(--ink);min-height:44px}.workspace footer a{align-self:center}
@media(max-width:1000px){.login-aside,.login-main{padding:32px}.login-manifesto h1{font-size:4rem}.login-aside-foot{flex-direction:column;gap:8px}.login-content h2{font-size:3rem}}
@media(max-width:700px){.login-layout{grid-template-columns:1fr}.login-aside{padding:23px 24px;gap:0}.login-manifesto,.login-aside-foot{display:none}.brand{font-size:2rem}.brand small{font-size:.9rem}.login-main{padding:18px 24px 25px;gap:35px;min-height:calc(100svh - 79px)}.login-content{margin:auto}.login-content h2{font-size:3rem}.login-intro{margin-bottom:27px}.login-footer{font-size:.7rem;margin-top:10px}.workspace header{padding:18px 20px;align-items:flex-start}.workspace .brand{font-size:1.7rem}.workspace .brand small{display:none}.account-controls{gap:8px;flex-direction:column;align-items:flex-end}.account-controls>span{font-size:.8rem}.workspace main{width:calc(100% - 40px);margin-top:30px}.input-row{flex-direction:column}#send{align-self:stretch}.msg{max-width:100%;padding:17px}.examples{flex-direction:column}.workspace footer{flex-direction:column;align-items:flex-start}.workspace footer a{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Account recovery */
[hidden]{display:none!important}.forgot-link{font-size:.875rem;margin:17px 0;text-align:right}.forgot-link a{text-underline-offset:4px}.recovery-form label{display:block;font-size:.875rem;font-weight:600;margin:20px 0 9px}.recovery-form input{display:block;width:100%;border:1px solid #8999ab;border-radius:2px;padding:12px 14px;min-height:54px;background:#fff;color:var(--ink)}.recovery-form .primary-button{width:100%;margin-top:26px}.form-status{padding:16px;border-left:3px solid var(--ink);background:var(--surface);font-size:.9rem;overflow-wrap:anywhere}#recovery-done{margin-top:24px;text-decoration:none}

/* NASH Synapse — authenticated graph workspace */
.workspace{height:100svh;overflow:hidden;background:#eef3f9;color:var(--ink)}
.workspace .app-header{min-height:118px;background:linear-gradient(108deg,#102944 0%,#183f69 48%,#25649c 100%);color:#fff;border:0;padding:14px 22px 0;display:grid;grid-template-columns:minmax(330px,1fr) auto auto;grid-template-rows:auto 36px;gap:10px 22px;align-items:center;box-shadow:0 1px 0 rgba(123,184,239,.28);position:relative;z-index:3}
.workspace .brand{font-size:1.55rem;color:#fff}.workspace .brand-point{color:#78bfff}.workspace .brand small{font-size:.75rem;border-left-color:#6687aa;margin-left:12px;padding-left:12px}.app-branding{display:flex;align-items:center;gap:12px;min-width:0}.product-name{padding-left:12px;border-left:1px solid rgba(255,255,255,.27);font-weight:650;font-size:.9rem}.product-note{font-size:.7rem;color:#afc9e6;white-space:nowrap}.system-metrics{display:flex;gap:6px;justify-content:center}.system-metrics span{font-size:.64rem;line-height:1.2;letter-spacing:.015em;color:#d0e3f7;background:rgba(255,255,255,.07);border:1px solid rgba(175,213,249,.2);border-radius:100px;padding:5px 10px;white-space:nowrap}.workspace .account-controls{gap:11px;font-size:.72rem;justify-self:end}.workspace .account-controls button{background:rgba(255,255,255,.07);border:1px solid rgba(190,220,250,.25);color:#fff;min-height:36px;padding:7px 10px;border-radius:6px}.workspace .account-controls button:hover{background:rgba(255,255,255,.15)}.product-nav{grid-column:1/-1;align-self:end;display:flex;gap:4px;height:36px}.product-nav span,.product-nav a{display:flex;align-items:center;padding:0 13px;text-decoration:none;color:#b7cee8;font-size:.75rem;border-bottom:3px solid transparent}.product-nav span[aria-current=page]{color:#fff;border-bottom-color:#78bfff;font-weight:650}.product-nav a:hover{color:#fff}

.workspace .synapse-shell{width:100%;height:calc(100svh - 154px);margin:0;display:grid;grid-template-columns:minmax(520px,1fr) minmax(430px,1.04fr);background:#f3f6fb}.conversation-pane{min-width:0;overflow:auto;padding:16px 20px 24px;scrollbar-color:#b4c5d9 transparent}.scope-bar{display:flex;align-items:center;gap:10px;padding:8px 11px;background:#fff;border:1px solid #dce5ef;border-radius:10px;box-shadow:0 3px 16px rgba(25,62,103,.05);font-size:.74rem;color:var(--muted)}.scope-label{text-transform:uppercase;letter-spacing:.1em;font-size:.59rem;font-weight:700;color:#6f829a}.scope-bar strong{color:#235e94;border:1px solid #c3d9ed;background:#edf6ff;border-radius:6px;padding:3px 9px;font-weight:600}.scope-bar #scope-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-intro{padding:22px 2px 6px}.conversation-intro .eyebrow{color:#397bad;margin:0 0 9px;font-size:.63rem}.workspace .conversation-intro h1{font-size:clamp(2rem,3.3vw,3.35rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 13px;font-weight:650}.conversation-intro>p:last-child{font-size:.86rem;color:var(--muted);max-width:660px;margin:0;line-height:1.55}.workspace .examples{display:flex;flex-wrap:wrap;gap:6px;margin:17px 0}.workspace .examples button{min-height:34px;padding:5px 11px;border:1px solid #d8e3ef;background:#fff;color:#235e94;border-radius:100px;font-size:.72rem;box-shadow:0 2px 9px rgba(25,62,103,.05)}.workspace .examples button:hover:not(:disabled){background:#e8f4ff;border-color:#78b5e9;transform:translateY(-1px)}

.workspace #log{display:flex;flex-direction:column;gap:13px;padding:2px 0 5px}.workspace .msg{max-width:92%;padding:13px 15px;line-height:1.62;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:13px;font-size:.84rem}.workspace .user{align-self:flex-end;color:#fff;background:linear-gradient(135deg,#2e75b6,#225b91);border-bottom-right-radius:4px;box-shadow:0 4px 14px rgba(34,91,145,.18)}.workspace .bot{align-self:flex-start;background:#fff;border:1px solid #dce5ef;border-bottom-left-radius:4px;box-shadow:0 3px 14px rgba(25,62,103,.055)}.workspace .meta{font-size:.72rem;margin-top:13px;border-top:1px solid #e8eef5;padding-top:9px;color:#687b93;display:flex;flex-direction:column;gap:6px}.meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.meta-row strong{text-transform:uppercase;letter-spacing:.08em;font-size:.58rem;margin-right:3px;color:#72859d}.workspace .chip{display:inline-block;border:1px solid #d6e2ee;background:#f1f7fd;color:#235e94;border-radius:100px;padding:2px 8px;margin:0;font-size:.65rem}.workspace .source-chip{background:#eef8f6;color:#237465;border-color:#cde7e1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.retrieval-measure{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.62rem;color:#90a0b4;margin:0}.workspace .bot[aria-busy=true]{color:#60758f;font-style:italic}

.workspace form{position:sticky;bottom:-24px;margin-top:14px;padding:18px 0 22px;border-top:0;background:linear-gradient(180deg,rgba(243,246,251,0),#f3f6fb 18%)}.workspace form>label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;color:#60748d}.workspace .input-row{display:flex;gap:8px}.workspace textarea{min-height:78px;max-height:180px;resize:vertical;border:1px solid #d1deeb;border-radius:11px;padding:11px 13px;background:#fff;color:var(--ink);box-shadow:0 3px 14px rgba(25,62,103,.055);font-size:.84rem}.workspace textarea:focus{border-color:#559bd5;outline:2px solid rgba(85,155,213,.22);outline-offset:0}.workspace #send{min-width:104px;align-self:stretch;border:0;border-radius:11px;background:#173b66;color:#fff;padding:12px 16px;font-size:.78rem;font-weight:650;display:flex;align-items:center;justify-content:space-between;gap:12px}.workspace #send:hover:not(:disabled){background:#245f97}.workspace .note{font-size:.67rem;color:#75869a;margin:8px 2px 0;line-height:1.45}

.graph-pane{min-width:0;position:relative;display:flex;flex-direction:column;background:#071225;color:#dcecff;border-left:1px solid #cddae7;overflow:hidden}.graph-pane.light{background:#eef5fc;color:#17375e}.graph-toolbar{position:absolute;left:16px;right:16px;top:14px;z-index:2;display:flex;align-items:flex-start;gap:12px;pointer-events:none}.graph-kicker{font-size:.56rem;letter-spacing:.13em;color:#6d96c4;margin:0 0 2px}.graph-toolbar h2{font-size:.82rem;text-transform:none;letter-spacing:0;color:#e5f1ff;margin:0;font-weight:600}.graph-toolbar>div>p:last-child{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.61rem;color:#6f8cac;margin:2px 0 0}.graph-actions{margin-left:auto;display:flex;gap:5px;pointer-events:auto}.graph-actions button{border:1px solid rgba(146,190,235,.24);background:rgba(255,255,255,.06);color:#bdd4ed;border-radius:6px;padding:5px 8px;font-size:.63rem}.graph-actions button:hover{background:rgba(255,255,255,.14);color:#fff}.graph-pane.light .graph-toolbar h2{color:#17375e}.graph-pane.light .graph-kicker,.graph-pane.light .graph-toolbar>div>p:last-child{color:#68819e}.graph-pane.light .graph-actions button{background:#fff;border-color:#cddceb;color:#355778}#graph-canvas{display:block;width:100%;height:100%;min-height:380px;touch-action:none}.graph-legend{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:8px 15px;background:rgba(5,15,31,.78);border-top:1px solid rgba(139,183,227,.16);font-size:.59rem;color:#7f9fc3;backdrop-filter:blur(7px)}.graph-pane.light .graph-legend{background:rgba(255,255,255,.88);border-top-color:#d6e1ec;color:#627b98}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}.legend-dot.concept{background:#55a8ef}.legend-dot.phase{background:#37c5bb}.legend-dot.competence{background:#8d86f3}.legend-dot.resource{background:#8094b2}.graph-help{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#607e9f}

.workspace-footer{height:36px;background:#fff;border-top:1px solid #d6e0eb;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:.65rem;color:#72849a}.workspace-footer #clear{min-height:30px;color:#285f91;text-decoration:none}.workspace-footer #clear:hover{text-decoration:underline;text-underline-offset:3px}

@media(max-width:1100px){.workspace .app-header{grid-template-columns:1fr auto}.system-metrics{grid-column:1/2;justify-content:flex-start;overflow:hidden}.workspace .account-controls{grid-column:2;grid-row:1/3}.product-nav{display:none}.workspace .synapse-shell{height:calc(100svh - 134px);grid-template-columns:minmax(440px,1fr) minmax(390px,.92fr)}.workspace-footer{height:36px}.product-note{display:none}}
@media(max-width:820px){.workspace{height:auto;overflow:auto}.workspace .app-header{min-height:108px;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:13px 15px}.workspace .brand small,.product-name{display:none}.system-metrics{overflow-x:auto;padding-bottom:3px}.system-metrics span{font-size:.58rem}.workspace .account-controls{grid-column:2;grid-row:1/3;flex-direction:column;align-items:flex-end}.workspace .account-controls>span{max-width:130px;overflow:hidden;text-overflow:ellipsis}.workspace .synapse-shell{height:auto;display:flex;flex-direction:column}.conversation-pane{overflow:visible;padding:14px 15px 20px}.graph-pane{height:54svh;min-height:410px;border-left:0;border-bottom:1px solid #cddae7}.workspace .conversation-intro h1{font-size:2.4rem}.workspace-footer{height:auto;min-height:40px;gap:16px;flex-wrap:wrap}}
@media(max-width:520px){.workspace .app-header{display:flex;flex-wrap:wrap}.app-branding{flex:1}.system-metrics{order:3;width:100%}.workspace .account-controls{flex-direction:row}.workspace .account-controls>span{display:none}.graph-pane{height:48svh;min-height:350px}.graph-toolbar{left:11px;right:11px}.graph-actions button{padding:5px 7px}.graph-legend span:nth-child(3),.graph-legend span:nth-child(4){display:none}.workspace .conversation-intro h1{font-size:2rem}.scope-bar #scope-detail{display:none}.workspace .examples{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.workspace .examples button{white-space:nowrap}.workspace .input-row{flex-direction:column}.workspace #send{min-height:48px}.workspace .msg{max-width:100%}.workspace-footer>span{display:none}}

.system-metrics a{font-size:.64rem;line-height:1.2;letter-spacing:.015em;color:#d0e3f7;background:rgba(255,255,255,.07);border:1px solid rgba(175,213,249,.2);border-radius:100px;padding:5px 10px;white-space:nowrap;text-decoration:none}.system-metrics a:hover{background:rgba(255,255,255,.16);color:#fff}
.workspace .app-header{grid-template-columns:minmax(300px,1fr) auto}.app-branding{grid-column:1;grid-row:1}.workspace .account-controls{grid-column:2;grid-row:1}.product-nav{grid-column:1;grid-row:2}.system-metrics{grid-column:2;grid-row:2;justify-self:end}
@media(max-width:1100px){.workspace .app-header{grid-template-columns:1fr auto}.system-metrics{grid-column:1;grid-row:2;justify-self:start;justify-content:flex-start;overflow:hidden}.workspace .account-controls{grid-column:2;grid-row:1/3}.product-nav{display:none}}
@media(max-width:520px){.app-branding,.system-metrics,.workspace .account-controls{grid-column:auto;grid-row:auto}.system-metrics a{font-size:.58rem}}

/* Visual continuity between the Academy workspace and the graph canvas. */
.workspace{background:#dfe9f4}.workspace .synapse-shell{padding:12px;gap:12px;background:#dfe9f4}.conversation-pane{background:#f6f9fc;border:1px solid #cfdeeb;border-radius:15px;box-shadow:0 8px 30px rgba(25,63,102,.08)}.graph-pane{background:#0d2947;border:1px solid #315b82;border-radius:15px;box-shadow:0 12px 34px rgba(15,44,76,.2)}.graph-toolbar{left:18px;right:18px;top:16px;padding-bottom:18px;background:linear-gradient(180deg,rgba(13,41,71,.88),rgba(13,41,71,0))}.graph-toolbar h2{font-size:.9rem}.graph-actions button{background:rgba(230,243,255,.08);border-color:rgba(176,213,244,.28);box-shadow:0 3px 12px rgba(4,19,34,.12)}.graph-legend{left:12px;right:12px;bottom:11px;border:1px solid rgba(142,190,231,.18);border-radius:10px;background:rgba(15,48,81,.82);padding:7px 11px}.workspace-footer{background:#dfe9f4;border-top:0;padding:0 24px}.graph-pane.light{background:#eef5fc;border-color:#c4d8e9}.graph-pane.light .graph-toolbar{background:linear-gradient(180deg,rgba(238,245,252,.94),rgba(238,245,252,0))}.graph-pane.light .graph-legend{background:rgba(255,255,255,.88);border-color:#ccdeed}
@media(max-width:820px){.workspace .synapse-shell{padding:10px;gap:10px}.graph-pane{border-bottom:1px solid #315b82}.conversation-pane{padding:14px 15px 20px}.graph-legend{left:8px;right:8px;bottom:8px}}

/* Secure hand-off to the locally tunnelled Neo4j Browser. */
.neo4j-access{min-height:100svh;background:#eef4fa;color:var(--ink)}.neo4j-access>header{height:86px;background:linear-gradient(108deg,#102944,#25649c);color:#fff;padding:0 max(24px,calc((100vw - 980px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px}.neo4j-access>header .brand{font-size:1.8rem}.neo4j-access>header .brand-point{color:#78bfff}.neo4j-access>header .brand small{font-size:.8rem;border-left-color:#6687aa}.neo4j-access>header>a:last-child{font-size:.8rem;text-decoration:none}.neo4j-access>header>a:last-child:hover{text-decoration:underline;text-underline-offset:4px}.neo4j-access main{width:min(980px,calc(100% - 48px));margin:72px auto}.neo4j-access .eyebrow{color:#2e75b6;margin:0 0 16px}.neo4j-access h1{font-size:clamp(3rem,6vw,5.6rem);line-height:.98;letter-spacing:-.06em;margin:0 0 28px}.neo4j-intro{max-width:650px;color:var(--muted);font-size:1.05rem;margin-bottom:50px}.neo4j-step{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:26px 0;border-top:1px solid #cbd9e7}.neo4j-step>span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#2e75b6;font-size:.8rem}.neo4j-step h2{font-size:1.45rem;margin:0 0 12px}.neo4j-step p{color:var(--muted);margin:10px 0}.neo4j-step code{display:block;overflow:auto;padding:15px;background:#102944;color:#dcebfa;border-radius:7px;font-size:.82rem;white-space:nowrap}.neo4j-button{display:inline-flex;margin-top:8px;padding:12px 17px;background:#1d568b;color:#fff;text-decoration:none;border-radius:6px;font-weight:600}.neo4j-button:hover{background:#2e75b6}.neo4j-note{margin-top:35px;padding:14px 17px;border-left:3px solid #2e75b6;background:#fff;color:#5c7088;font-size:.82rem}@media(max-width:600px){.neo4j-access>header{height:74px;padding:0 18px}.neo4j-access>header .brand small{display:none}.neo4j-access main{width:calc(100% - 36px);margin:45px auto}.neo4j-access h1{font-size:3rem}.neo4j-step{grid-template-columns:38px 1fr}.neo4j-step code{font-size:.7rem}}

/* Choix du moteur : la clé personnelle n'est conservée que dans la session serveur. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.llm-dialog{width:min(720px,calc(100% - 28px));max-height:calc(100svh - 32px);overflow:auto;padding:0;border:0;border-radius:18px;color:#102944;background:#f7faff;box-shadow:0 28px 90px rgba(4,21,39,.35)}.llm-dialog::backdrop{background:rgba(5,18,34,.72);backdrop-filter:blur(8px)}.llm-form{padding:34px}.llm-dialog-head{padding-bottom:26px;border-bottom:1px solid #d5e1ed}.llm-dialog-head .eyebrow{margin:0 0 13px;color:#3478b8}.llm-dialog-head h2{font-size:clamp(2rem,5vw,3.2rem);line-height:1;letter-spacing:-.045em;margin:0 0 15px}.llm-dialog-head>p:last-child{max-width:610px;color:#60768e;margin:0;font-size:.93rem}.llm-mode-list{border:0;padding:0;margin:24px 0;display:grid;gap:10px}.llm-mode-card{position:relative;display:grid;grid-template-columns:22px 1fr auto;gap:13px;align-items:center;padding:18px;border:1px solid #cad9e7;border-radius:12px;background:#fff;cursor:pointer}.llm-mode-card:has(input:checked){border-color:#2e75b6;background:#edf6ff;box-shadow:0 0 0 2px rgba(46,117,182,.09)}.llm-mode-card input{position:absolute;opacity:0;pointer-events:none}.llm-radio{display:block;width:18px;height:18px;border:1px solid #8aa2b8;border-radius:50%;box-shadow:inset 0 0 0 4px #fff}.llm-mode-card input:checked+.llm-radio{background:#2e75b6;border-color:#2e75b6}.llm-mode-card strong,.llm-mode-card small{display:block}.llm-mode-card strong{font-size:.98rem}.llm-mode-card small{margin-top:4px;color:#6b7f93}.llm-mode-card em{font-style:normal;font-size:.64rem;letter-spacing:.07em;text-transform:uppercase;color:#1f659f;background:#dceeff;border-radius:100px;padding:6px 9px}.llm-custom-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:-8px 0 22px;padding:19px;border:1px solid #cddce9;border-radius:12px;background:#edf3f9}.llm-custom-fields[hidden]{display:none}.llm-custom-fields label{font-size:.72rem;font-weight:700;color:#35597b}.llm-custom-fields label:nth-child(2){grid-column:1/-1}.llm-custom-fields input,.llm-custom-fields select{display:block;width:100%;min-height:44px;margin-top:7px;border:1px solid #b9ccdd;border-radius:7px;background:#fff;color:#102944;padding:9px 11px;font:inherit;font-size:.85rem}.secret-field{display:flex;align-items:stretch}.secret-field input{border-radius:7px 0 0 7px}.secret-field button{margin-top:7px;border:1px solid #b9ccdd;border-left:0;border-radius:0 7px 7px 0;background:#e4edf5;color:#285b86;padding:0 12px;font-size:.72rem}.llm-privacy{padding:13px 15px;border-left:3px solid #2e75b6;background:#eaf3fb;color:#5d7288;font-size:.76rem;line-height:1.45}.llm-error{margin:14px 0 0;padding:11px 13px;border-radius:7px;background:#fdeaea;color:#9b2929;font-size:.8rem}.llm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.llm-actions button{min-height:44px;border-radius:7px;padding:0 17px}.llm-actions #llm-cancel{background:transparent;color:#526b84}.llm-actions #llm-submit{background:#174f82;color:#fff;font-weight:700}.llm-actions #llm-submit:hover{background:#246aa5}.account-controls #change-llm{color:#b9d6ef}@media(max-width:600px){.llm-form{padding:25px 20px}.llm-dialog-head h2{font-size:2.25rem}.llm-mode-card{grid-template-columns:20px 1fr}.llm-mode-card em{grid-column:2;justify-self:start}.llm-custom-fields{grid-template-columns:1fr}.llm-custom-fields label:nth-child(2){grid-column:auto}.llm-actions{flex-direction:column-reverse}.llm-actions button{width:100%}}

/* Lisibilité des réponses et consultation des passages qui les étayent. */
.workspace .answer-content{white-space:normal;overflow-wrap:anywhere;font-size:.88rem;line-height:1.75;color:#1b3049}
.workspace .answer-content p{margin:0 0 .85em}.workspace .answer-content p:last-child{margin-bottom:0}
.workspace .answer-content h2,.workspace .answer-content h3,.workspace .answer-content h4{line-height:1.3;margin:1.05em 0 .45em;color:#153a60}
.workspace .answer-content h2{font-size:1.12rem}.workspace .answer-content h3{font-size:1rem}.workspace .answer-content h4{font-size:.92rem}
.workspace .answer-content ul,.workspace .answer-content ol{margin:.35em 0 .9em;padding-left:1.45em}.workspace .answer-content li{padding-left:.15em;margin:.22em 0}
.workspace .answer-content blockquote{margin:.7em 0;padding:.15em 0 .15em .9em;border-left:3px solid #8db8df;color:#536b83}
.workspace .answer-content code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#eef4fa;border:1px solid #dce6ef;border-radius:4px;padding:.08em .3em;font-size:.9em}
.workspace .answer-content a{color:#1c68a6;text-underline-offset:2px}.workspace .answer-content strong{font-weight:700;color:#153a60}
.sources-panel{margin-top:14px;border-top:1px solid #e1eaf3;padding-top:9px;color:#48627d;font-size:.72rem}
.sources-panel>summary{width:fit-content;cursor:pointer;color:#23669f;font-weight:650;list-style:none;display:flex;align-items:center;gap:7px;min-height:32px}
.sources-panel>summary::-webkit-details-marker{display:none}.sources-panel>summary::after{content:'+';font-size:1rem;line-height:1;color:#3b80bb}.sources-panel[open]>summary::after{content:'−'}
.source-list{list-style:none;padding:4px 0 0;margin:0;display:grid;gap:8px}.source-list li{padding:10px 11px;border:1px solid #dbe7f1;border-radius:8px;background:#f7fafc}.source-list li>strong{display:block;font-size:.69rem;color:#255b88}.source-list li>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;color:#435a70;line-height:1.6;font-size:.7rem}.source-list .source-unavailable{color:#7b8795;font-style:italic}
.workspace .bot[aria-busy=true]{white-space:pre-wrap}

/* Espace connecté : carnet R&D et carte personnelle. */
.workspace{--app-header-height:118px}.workspace .app-header{height:var(--app-header-height)}
.product-nav a[aria-current=page]{color:#fff;border-bottom-color:#78bfff;font-weight:650}.nav-dot{width:5px;height:5px;border-radius:50%;background:#78bfff;margin-left:8px}.product-nav a .nav-dot{display:inline-block;padding:0;border:0}
.workspace .synapse-shell,.workspace .workspace-page,.workspace .personal-page{height:calc(100svh - var(--app-header-height) - 36px)}
.workspace .workspace-page{width:100%;margin:0;overflow:auto;background:#f4f7fa}.rd-layout{max-width:1300px;margin:0 auto;padding:48px 44px 64px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.8fr);gap:36px}
.rd-intro>.eyebrow,.section-heading .eyebrow{color:#407aab;margin:0 0 17px;font-size:.65rem}.stage-badge{display:inline-block;font-size:.65rem;font-weight:650;border:1px solid #c5dced;border-radius:100px;padding:4px 10px;background:#eaf4fc;color:#245f91}.stage-badge.planned{background:#f0f2f5;border-color:#d8dfe6;color:#5a697b}
.workspace .rd-intro h1{font-size:clamp(2.4rem,3.7vw,3.6rem);line-height:1.09;margin:24px 0 20px;letter-spacing:-.05em}.rd-intro h1 span{color:#47769e}.rd-lead{color:#526b82;font-size:.98rem;line-height:1.8;max-width:650px;margin:0}.rd-facts{display:flex;flex-wrap:wrap;gap:17px;margin-top:28px;font-size:.67rem;color:#536d86}.rd-facts strong{color:#2d78b5;margin-right:6px;font-variant-numeric:tabular-nums}
.rd-principle{align-self:center;background:#153958;color:#dbeaf6;border-radius:15px;padding:30px;position:relative;overflow:hidden}.rd-principle>.eyebrow{color:#92c9f2;font-size:.6rem;margin:0 0 25px}.rd-principle .principle-quote{color:#fff;font-size:1.5rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 20px}.rd-principle>p:not(.eyebrow):not(.principle-quote){font-size:.8rem;line-height:1.75;color:#b9d0e3}.rd-principle>a{display:flex;justify-content:space-between;border-top:1px solid #42617c;margin-top:25px;padding-top:15px;text-decoration:none;color:#b8dfff;font-size:.75rem}
.rd-research,.rd-roadmap{grid-column:1/-1}.rd-research{margin-top:18px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:24px}.section-heading .eyebrow{margin:0 0 9px}.section-heading h2{margin:0;color:#183c5e;font-size:1.7rem;line-height:1.2;letter-spacing:-.035em}.section-heading>p{max-width:360px;font-size:.76rem;line-height:1.7;color:#668097;margin:0}
.paper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.paper-card{background:#fff;border:1px solid #d9e3ec;border-radius:12px;padding:25px;display:flex;flex-direction:column}.paper-top{display:flex;justify-content:space-between;gap:12px;color:#6585a1;font-size:.6rem;letter-spacing:.055em}.paper-card h3{font-size:1.9rem;line-height:1.1;color:#154e7b;letter-spacing:-.04em;margin:24px 0 8px}.paper-card .paper-title{font-size:.71rem;color:#54758f;line-height:1.5;min-height:2.9em;margin:0 0 13px}.paper-card>p{font-size:.8rem;line-height:1.75;color:#49657d;margin:0 0 17px}.paper-decision{padding:14px 16px;background:#f0f6fc;border-left:2px solid #65a2d1;margin:0 0 16px}.paper-decision strong{color:#285f8a;font-size:.68rem}.paper-decision p{font-size:.79rem;line-height:1.65;color:#345974;margin:5px 0 0}.paper-card .paper-limit{font-size:.7rem;color:#6b7e8e;line-height:1.65}.paper-card>a{display:flex;justify-content:space-between;margin-top:auto;border-top:1px solid #e1e9f0;padding-top:13px;text-decoration:none;color:#1c629a;font-size:.74rem;font-weight:650}.paper-card>a:hover{text-decoration:underline;text-underline-offset:3px}.research-note{font-size:.67rem;line-height:1.7;color:#708394;max-width:900px;margin:18px 0 0}
.rd-roadmap{border-top:1px solid #d6e1e9;padding-top:34px}.roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.roadmap-grid article{border-right:1px solid #d8e3ec;padding-right:24px}.roadmap-grid article:last-child{border:0}.roadmap-grid h3{font-size:1.02rem;line-height:1.35;color:#264e70;letter-spacing:-.015em;margin:15px 0 10px}.roadmap-grid p{font-size:.78rem;line-height:1.75;color:#5c768c;margin:0}.evaluation-note{padding:22px 25px;border:1px solid #d1e0ee;border-radius:10px;background:#eaf2f9;margin-top:28px}.evaluation-note strong{color:#245676;font-size:.83rem}.evaluation-note p{font-size:.78rem;color:#536e85;line-height:1.8;margin:7px 0 0}
.workspace .personal-page{width:100%;margin:0;padding:12px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:12px;background:#dfe9f4}.personal-sidebar{background:#f6f9fc;border:1px solid #cdddea;border-radius:15px;padding:25px;overflow:auto}.personal-sidebar>.eyebrow{color:#417cad;font-size:.61rem;margin:0 0 13px}.workspace .personal-sidebar h1{font-size:2.8rem;line-height:1;margin:0 0 17px;letter-spacing:-.055em}.personal-intro{font-size:.81rem;line-height:1.7;color:#61798f;margin:0 0 19px}.personal-account{display:flex;align-items:center;gap:6px;font-size:.67rem;color:#496f92;overflow-wrap:anywhere}.private-dot{width:6px;height:6px;border-radius:50%;background:#458ac5;flex-shrink:0}.personal-stats{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;padding:21px 0;margin:0 0 18px;border-bottom:1px solid #d7e4ee}.personal-stats div{display:flex;flex-direction:column}.personal-stats strong{font-size:2rem;line-height:1.1;letter-spacing:-.035em;color:#245f91;font-weight:600}.personal-stats span{font-size:.62rem;color:#6b8398;margin-top:5px}
.workspace .tracking-option{display:flex;align-items:center;gap:10px;margin:0;font-size:.76rem;cursor:pointer}.tracking-option input{width:18px;height:18px;accent-color:#2e75b6;flex-shrink:0}.tracking-option strong,.tracking-option small{display:block}.tracking-option small{font-size:.64rem;font-weight:400;color:#72889d;margin-top:4px}.personal-privacy{font-size:.65rem;line-height:1.7;color:#73869a;margin:13px 0 11px}.personal-status{font-size:.7rem;color:#366b96;line-height:1.6}.personal-status.is-error{color:#a43f4a}.subtle-button{color:#285f8e;background:transparent;border:1px solid #cedde9;border-radius:6px;padding:8px 10px;font-size:.68rem;min-height:36px}.subtle-button:hover:not(:disabled){background:#e7f1fa}.personal-tools{display:flex;gap:8px;margin:14px 0 0;flex-wrap:wrap}.personal-notions{margin-top:26px;border-top:1px solid #d7e4ee;padding-top:19px}.personal-notions h2{font-size:.85rem;margin:0 0 7px;color:#355b7c}.personal-notions>p{font-size:.66rem;line-height:1.6;color:#788a9c;margin:0 0 11px}.concept-list{display:flex;flex-direction:column;gap:5px;max-height:350px;overflow:auto}.concept-list button{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #dbe5ef;background:#fff;border-radius:7px;padding:9px 10px;color:#315f83;font-size:.71rem;line-height:1.5}.concept-list button small{color:#7695ae;white-space:nowrap}.concept-list button[aria-pressed=true]{background:#e5f1fd;border-color:#6da7d6}.concept-list button:hover{border-color:#8cb5d6}
.personal-visual{min-width:0;min-height:0;border:1px solid #315b82;border-radius:15px;background:#0d2947;color:#dbeeff;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 34px rgba(15,44,76,.14)}.personal-visual-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:23px 25px 0}.personal-visual-head .eyebrow{font-size:.57rem;color:#7aa9d1;margin:0 0 5px}.personal-visual-head h2{font-size:1.12rem;letter-spacing:-.025em;margin:0;color:#dcefff;font-weight:600}.personal-visual-head button{border:1px solid #4c6d8c;background:rgba(255,255,255,.07);color:#b9d7f2;font-size:.67rem;border-radius:6px;padding:7px 11px;min-height:34px}.personal-canvas-wrap{position:relative;flex:1;min-height:230px;overflow:hidden}#personal-canvas{display:block;width:100%;height:100%;touch-action:none}.personal-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;pointer-events:none}.personal-empty>span{font-size:3.8rem;color:#70b0e0;line-height:1;margin-bottom:14px}.personal-empty h3{font-size:1.4rem;letter-spacing:-.03em;font-weight:500;margin:0 0 11px;color:#edf6ff}.personal-empty p{max-width:320px;font-size:.82rem;line-height:1.75;color:#93b6d5;margin:0}.personal-empty a{margin-top:22px;pointer-events:auto;background:#c6e6ff;color:#154670;border-radius:7px;text-decoration:none;font-size:.75rem;padding:10px 15px;font-weight:650}.personal-empty a span{margin-left:20px}.personal-detail{margin:0 18px 14px;padding:16px 18px;background:#143957;border:1px solid #335e81;border-radius:10px;color:#b5cfe5}.personal-detail strong{font-size:.85rem;color:#e1f0fc}.personal-detail p{font-size:.73rem;line-height:1.6;margin:5px 0 0}.personal-detail .concept-dates{color:#87b1d4;font-size:.64rem}.personal-legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:0 22px 14px;font-size:.6rem;color:#82a5c3}.personal-save-note{font-size:.65rem;color:#597f9d;white-space:normal;margin:11px 0 0}.workspace-footer #footer-back{font-size:.65rem;color:#285f91;text-decoration:none}
@media(max-width:1100px){.workspace{--app-header-height:150px}.workspace .app-header{grid-template-rows:auto auto 36px;min-height:150px}.product-nav{display:flex;grid-column:1/-1;grid-row:3}.system-metrics{grid-column:1/-1;grid-row:2;max-width:100%;overflow:auto}.workspace .account-controls{grid-row:1}.rd-layout{padding:30px 26px 45px;gap:26px}.rd-facts{gap:10px}.workspace .personal-page{grid-template-columns:300px minmax(0,1fr)}.personal-sidebar{padding:22px}.section-heading{gap:24px}}
@media(max-width:820px){.workspace .synapse-shell,.workspace .workspace-page,.workspace .personal-page{height:auto}.workspace .workspace-page{min-height:calc(100svh - 186px)}.rd-layout{grid-template-columns:1fr;padding:27px 22px 40px}.rd-principle{padding:25px}.rd-principle .principle-quote{font-size:1.4rem}.rd-research{margin-top:0}.section-heading{display:block}.section-heading>p{margin-top:13px;max-width:none}.paper-card{padding:20px}.roadmap-grid{grid-template-columns:1fr;gap:22px}.roadmap-grid article{border:0;border-bottom:1px solid #d8e3ec;padding:0 0 22px}.workspace .personal-page{display:flex;flex-direction:column;padding:10px;gap:10px}.personal-sidebar{overflow:visible}.personal-stats{max-width:310px}.personal-visual{min-height:650px}.personal-canvas-wrap{min-height:350px}.concept-list{max-height:200px}.personal-legend{justify-content:flex-start;gap:12px}.personal-notions{margin-top:20px}.personal-privacy{max-width:520px}}
@media(max-width:520px){.workspace .app-header{height:auto;min-height:155px;gap:8px}.workspace .product-nav{order:4;width:100%;display:flex;flex-shrink:0}.product-nav a{font-size:.73rem;padding:0 13px}.workspace .account-controls button{font-size:.64rem;padding:7px}.rd-layout{padding:25px 17px 35px;gap:23px}.workspace .rd-intro h1{font-size:2.25rem}.rd-lead{font-size:.87rem}.rd-facts{flex-direction:column;gap:8px}.paper-grid{grid-template-columns:1fr}.section-heading h2{font-size:1.5rem}.paper-card .paper-title{min-height:0}.personal-visual-head{padding:19px 18px 0}.personal-visual-head h2{font-size:1rem}.personal-detail{margin:0 12px 12px}.personal-visual{min-height:620px}.personal-legend{padding:0 17px 14px}.workspace .personal-sidebar h1{font-size:2.5rem}}
.system-metrics{scrollbar-width:none}.system-metrics::-webkit-scrollbar{display:none}
@media(max-width:820px){.workspace .app-header{position:sticky;top:0}}

/* Administration du corpus : extraction locale, validation et graphe commun. */
.product-nav a .nav-count{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:7px;padding:0 5px;border:0;border-radius:10px;background:#78bfff;color:#102944;font-size:.58rem;font-weight:800}
.workspace .corpus-page,.workspace .validation-page{overflow:auto;background:#f3f7fb}
.corpus-layout,.validation-layout{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:38px 0 64px}
.corpus-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;padding-bottom:30px;border-bottom:1px solid #d5e1ec}.corpus-intro>.eyebrow{align-self:flex-start;margin:8px 0 0;color:#3678ae}.workspace .corpus-intro h1,.workspace .validation-intro h1{font-size:clamp(2.3rem,4.4vw,4.25rem);margin:0 0 11px;color:#153a5b}.corpus-intro>div>p,.validation-intro>p:last-child{max-width:650px;margin:0;color:#5c7389;font-size:.88rem;line-height:1.75}.local-analysis-badge{flex-shrink:0;border:1px solid #b8d8ee;border-radius:100px;background:#e6f4ff;color:#1e679e;padding:7px 12px;font-size:.66rem;font-weight:700;white-space:nowrap}
.upload-section,.corpus-library{padding-top:31px}.corpus-library{margin-top:35px;border-top:1px solid #d5e1ec}.corpus-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}.corpus-section-heading .eyebrow{margin:0 0 5px;color:#4d7da5;font-size:.62rem}.corpus-section-heading h2{margin:0;color:#1a456a;font-size:1.35rem;letter-spacing:-.02em}.corpus-section-heading>p{margin:0;color:#6c8093;font-size:.7rem}
.document-dropzone{display:flex!important;min-height:205px;margin:0!important;border:2px dashed #a9c8e0;border-radius:18px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;text-align:center;color:#1a456a;transition:border-color .15s,background .15s,transform .15s}.document-dropzone:hover,.document-dropzone.is-dragging{border-color:#327eb8;background:#eef8ff;transform:translateY(-1px)}.document-dropzone .drop-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:6px;border-radius:13px;background:#e4f2fd;color:#276fa7;font-size:1.7rem;font-weight:300}.document-dropzone strong{font-size:1.05rem}.document-dropzone>span:not(.drop-icon){color:#58738b;font-size:.82rem}.document-dropzone small{margin-top:8px;color:#8293a2;font-size:.67rem;font-weight:400}.corpus-status{min-height:22px;margin:12px 0 0;color:#386d95;font-size:.73rem;line-height:1.6}.corpus-status.is-error{color:#a23846}.corpus-status.is-success{color:#28734d}
.corpus-outline-button{min-height:42px;border:1px solid #b8cad9;border-radius:8px;background:#fff;color:#245e8a;padding:8px 14px;font-size:.76rem;font-weight:650}.corpus-outline-button:hover:not(:disabled){border-color:#6f9ebe;background:#edf6fc}.corpus-explanation{margin:-3px 0 17px;color:#718398;font-size:.68rem;line-height:1.65}.corpus-document-list{display:grid;border-top:1px solid #dce5ed}.corpus-year{margin:22px 0 6px;color:#6b8194;font-size:.7rem;font-weight:700;letter-spacing:.08em}.corpus-document{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:17px 8px;border-bottom:1px solid #e2e9ef}.corpus-document-main{min-width:0}.corpus-document-name{display:block;color:#183d5d;font-size:.86rem;overflow-wrap:anywhere}.corpus-document-meta{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:5px;color:#71879a;font-size:.63rem}.corpus-state{display:inline-flex;align-items:center;gap:5px}.corpus-state:before{content:'';width:6px;height:6px;border-radius:50%;background:#8ba1b3}.corpus-state.ingested:before{background:#3d9b6c}.corpus-state.pending:before{background:#d28b29}.corpus-state.error:before{background:#bd4550}.corpus-document-actions{display:flex;gap:7px}.corpus-document-actions button{min-height:38px;border:1px solid #cad8e4;border-radius:7px;background:#fff;color:#255d87;padding:7px 11px;font-size:.7rem}.corpus-document-actions button:hover:not(:disabled){background:#eaf4fb}.corpus-analysis{grid-column:1/-1;padding:14px 16px;border-left:3px solid #66a3cf;background:#eaf3fa;color:#445f75;font-size:.72rem;line-height:1.65}.corpus-analysis strong{color:#204f73}.corpus-analysis pre{max-height:180px;overflow:auto;margin:10px 0 0;padding:12px;border-radius:7px;background:#fff;color:#304b61;font:inherit;font-size:.68rem;white-space:pre-wrap}.corpus-empty{padding:30px;border:1px dashed #c6d6e2;border-radius:12px;background:#fff;color:#75899b;text-align:center;font-size:.8rem}
.workspace .corpus-graph-page{width:100%;margin:0;padding:12px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:12px;background:#dfe9f4}.corpus-graph-copy{overflow:auto;border:1px solid #cdddea;border-radius:15px;background:#f7fafc;padding:27px}.corpus-graph-copy>.eyebrow{margin:0 0 13px;color:#417cad;font-size:.61rem}.workspace .corpus-graph-copy h1{margin:0 0 18px;font-size:2.65rem;line-height:1.02;color:#183f62}.corpus-graph-copy>p:not(.eyebrow):not(.corpus-status){color:#60788d;font-size:.79rem;line-height:1.75}.corpus-graph-stats{display:grid;grid-template-columns:auto 1fr;gap:3px 9px;margin:25px 0;padding:20px 0;border-block:1px solid #d7e4ee}.corpus-graph-stats strong{color:#266b9f;font-size:1.8rem;line-height:1}.corpus-graph-stats span{align-self:center;color:#71879a;font-size:.66rem}.corpus-graph-copy .graph-actions{margin-top:20px;display:flex;gap:8px;flex-wrap:wrap}.corpus-graph-copy .graph-actions button,.corpus-graph-copy .graph-actions a{display:inline-flex;align-items:center;min-height:39px;border:1px solid #c7d7e4;border-radius:7px;background:#fff;color:#245f8e;padding:8px 11px;text-decoration:none;font-size:.7rem}.corpus-graph-visual{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #315b82;border-radius:15px;background:#0d2947;color:#dbeeff}#corpus-graph-canvas{display:block;width:100%;height:100%;min-height:400px;flex:1;touch-action:none}.corpus-graph-visual .graph-legend{position:static;background:#102e4d;border-top:1px solid #284c6b}
.validation-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);column-gap:50px;align-items:end;padding-bottom:30px;border-bottom:1px solid #d5e1ec}.validation-intro>.eyebrow{grid-column:1/-1;margin:0 0 12px;color:#3e79aa}.validation-list{display:grid;gap:14px;margin-top:25px}.validation-card{border:1px solid #d4e0e9;border-radius:14px;background:#fff;padding:22px}.validation-card-head{display:flex;justify-content:space-between;gap:18px}.validation-card h2{margin:0;color:#193f60;font-size:1.05rem;overflow-wrap:anywhere}.validation-card-meta{display:flex;flex-wrap:wrap;gap:9px 15px;margin:8px 0 0;color:#70869a;font-size:.66rem}.validation-preview{max-height:210px;overflow:auto;margin:18px 0;padding:16px;border-radius:9px;background:#f0f5f9;color:#41596e;font-size:.72rem;line-height:1.7;white-space:pre-wrap}.validation-actions{display:flex;justify-content:flex-end;gap:9px}.validation-actions button{min-height:42px;border-radius:8px;padding:8px 14px;font-size:.74rem;font-weight:650}.validation-actions .discard{border:1px solid #d2dce5;background:#fff;color:#6c7885}.validation-actions .approve{border:1px solid #1f669c;background:#1f669c;color:#fff}.validation-actions .approve:hover:not(:disabled){background:#2c79b3}
@media(max-width:900px){.corpus-intro{align-items:flex-start;flex-direction:column}.workspace .corpus-graph-page{display:flex;flex-direction:column}.corpus-graph-copy{overflow:visible}.corpus-graph-visual{min-height:620px}.validation-intro{display:block}.validation-intro>p:last-child{margin-top:15px}.corpus-section-heading{align-items:flex-start;flex-direction:column}.corpus-document{grid-template-columns:1fr}.corpus-document-actions{justify-content:flex-start}.corpus-layout,.validation-layout{width:min(100% - 34px,1180px)}}
@media(max-width:560px){.corpus-layout,.validation-layout{width:calc(100% - 28px);padding-top:27px}.document-dropzone{min-height:190px;padding:24px}.workspace .corpus-graph-copy h1{font-size:2.2rem}.corpus-graph-visual{min-height:540px}.validation-card{padding:18px}.validation-card-head{display:block}.validation-actions{flex-direction:column-reverse}.validation-actions button{width:100%}.corpus-document-actions{flex-direction:column}.corpus-document-actions button{width:100%}}

/* TP+ 2027 : préparation personnelle et dossier de transposition. */
.tpplus-course-switcher{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,360px);gap:28px;margin-top:18px;padding:24px 28px;border:1px solid #cbdde9;border-radius:16px;background:#fff;box-shadow:0 9px 28px rgba(25,65,100,.05)}.tpplus-course-switcher .eyebrow{margin:0 0 6px;color:#4b7c9f;font-size:.61rem}.tpplus-course-switcher h2{margin:0 0 18px;color:#173f60;font-size:1.65rem;letter-spacing:-.035em}.tpplus-course-switcher label{display:block;margin-bottom:7px;color:#3f6079;font-size:.72rem;font-weight:700}.tpplus-course-switcher select,.tpplus-course-switcher input{width:100%;min-height:46px;border:1px solid #bfd2df;border-radius:8px;background:#fbfdff;color:#173a56;padding:9px 12px;font:inherit;font-size:.83rem}.tpplus-course-switcher select:focus,.tpplus-course-switcher input:focus{border-color:#4f94c5;outline:3px solid rgba(79,148,197,.16)}.tpplus-course-switcher button{min-height:46px;border:1px solid #205f8d;border-radius:8px;background:#205f8d;color:#fff;padding:8px 15px;font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.tpplus-course-switcher button:hover:not(:disabled){background:#2d76a9}.tpplus-course-switcher button:disabled{opacity:.5;cursor:not-allowed}.tpplus-course-selection>p:not(.eyebrow){margin:10px 0 0;color:#617b90;font-size:.73rem;line-height:1.55}.tpplus-course-selection .tpplus-course-sources{color:#7890a4;font-size:.67rem}.tpplus-course-management{display:flex;flex-direction:column;justify-content:flex-end;gap:12px}.tpplus-course-management form>div{display:flex;gap:8px}.tpplus-course-management form input{min-width:0}.tpplus-course-management #tpplus-course-delete{align-self:flex-start;border-color:#cbd7e1;background:#fff;color:#6d7380}.tpplus-course-management #tpplus-course-delete:hover:not(:disabled){background:#f7eaea;color:#9b3d45}
@media(max-width:760px){.tpplus-course-switcher{grid-template-columns:1fr;padding:21px;gap:18px}.tpplus-course-management{justify-content:flex-start}}
.tpplus-demo{margin-top:18px;padding:30px;border:1px solid #c9dae6;border-radius:18px;background:linear-gradient(145deg,#fff 0%,#f2f8fc 100%);box-shadow:0 12px 34px rgba(25,65,100,.07)}
.tpplus-demo-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.tpplus-demo-heading .eyebrow,.tpplus-demo-learner .eyebrow{margin:0 0 7px;color:#2877a7;font-size:.61rem;letter-spacing:.1em}.tpplus-demo-heading h2{margin:0;color:#143c5d;font-size:clamp(1.75rem,2.7vw,2.55rem);line-height:1.1;letter-spacing:-.04em}.tpplus-demo-heading p:last-child{max-width:660px;margin:10px 0 0;color:#5b7489;font-size:.78rem;line-height:1.6}.tpplus-demo-picker{display:flex;gap:7px;flex:0 0 auto}.tpplus-demo-picker button{min-height:43px;border:1px solid #a9c9de;border-radius:100px;background:#fff;color:#23618a;padding:8px 15px;font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}.tpplus-demo-picker button[aria-pressed="true"]{border-color:#155b88;background:#155b88;color:#fff}.tpplus-demo-picker button:disabled{opacity:.45;cursor:not-allowed}
.tpplus-demo-main{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:15px;margin-top:25px}.tpplus-demo-case{display:flex;flex-direction:column;min-width:0;min-height:288px;padding:26px;border-radius:15px;background:radial-gradient(circle at 95% 5%,rgba(130,208,243,.26),transparent 32%),linear-gradient(140deg,#102e4c,#135d85);color:#fff}.tpplus-demo-tag{align-self:flex-start;border:1px solid rgba(174,221,244,.55);border-radius:100px;padding:6px 11px;color:#cdeeff;font-size:.64rem;font-weight:750;letter-spacing:.07em}.tpplus-demo-context{margin:28px 0 5px;color:#8bd0ec;font-size:.72rem;font-weight:750}.tpplus-demo-case h3{margin:0;color:#fff;font-size:clamp(1.5rem,2.3vw,2.15rem);line-height:1.12;letter-spacing:-.035em}.tpplus-demo-case>p:not(.tpplus-demo-context){margin:12px 0 23px;color:#cce2ed;font-size:.77rem;line-height:1.6}.tpplus-demo-case>div{display:grid;gap:5px;margin-top:auto;padding-top:17px;border-top:1px solid rgba(196,229,243,.27)}.tpplus-demo-case>div span{color:#87cde9;font-size:.58rem;letter-spacing:.1em;font-weight:800}.tpplus-demo-case>div strong{color:#fff;font-size:.82rem;line-height:1.5;font-weight:650}
.tpplus-demo[data-course="ping2"] .tpplus-demo-case{background:radial-gradient(circle at 95% 5%,rgba(224,193,248,.24),transparent 32%),linear-gradient(140deg,#29334f,#59477d)}.tpplus-demo[data-course="ping2"] .tpplus-demo-context{color:#e2c9f6}.tpplus-demo[data-course="ping2"] .tpplus-demo-case>div span{color:#e0c4ee}
.tpplus-demo-learner{min-width:0;padding:20px;border:1px solid #d2e1ea;border-radius:15px;background:#fff}.tpplus-demo-phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tpplus-demo-phases article{min-width:0;min-height:220px;padding:18px;border-radius:11px;background:#edf5fa;border-top:4px solid #5aadd1}.tpplus-demo-phases article:nth-child(2){background:#e5f3f6;border-top-color:#2285a0}.tpplus-demo-phases article:nth-child(3){background:#eff5ec;border-top-color:#75a850}.tpplus-demo-phases article>span{color:#3a7797;font-size:.61rem;font-weight:800;letter-spacing:.07em}.tpplus-demo-phases h3{margin:15px 0 9px;color:#153f5a;font-size:1.12rem;letter-spacing:-.02em}.tpplus-demo-phases p{margin:0;color:#496a7d;font-size:.73rem;line-height:1.58}
.tpplus-demo-reasoning{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:15px}.tpplus-demo-reasoning article{display:flex;gap:12px;min-width:0;padding:17px;border:1px solid #d1e0e9;border-radius:12px;background:#fff}.tpplus-demo-reasoning article>span{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:8px;background:#145985;color:#fff;font-size:.72rem;font-weight:800}.tpplus-demo-reasoning article:nth-child(2)>span{background:#b97928}.tpplus-demo-reasoning article:nth-child(3)>span{background:#25858c}.tpplus-demo-reasoning article:nth-child(4)>span{background:#598944}.tpplus-demo-reasoning strong{color:#174763;font-size:.79rem}.tpplus-demo-reasoning p{margin:7px 0 0;color:#5a7589;font-size:.7rem;line-height:1.55}
.tpplus-demo-bottom{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:13px;margin-top:15px}.tpplus-demo-bottom article{min-width:0;padding:22px;border-radius:13px}.tpplus-demo-bottom article>span{font-size:.6rem;letter-spacing:.09em;font-weight:800}.tpplus-demo-evidence{border:1px solid #c7dec5;background:#edf7e9}.tpplus-demo-evidence>span{color:#427842}.tpplus-demo-evidence strong{display:block;margin:9px 0;color:#24583a;font-size:1rem;line-height:1.4}.tpplus-demo-evidence p,.tpplus-demo-bridge p{margin:0;color:#537168;font-size:.72rem;line-height:1.55}.tpplus-demo-evidence small{display:block;margin-top:14px;padding-top:12px;border-top:1px solid #c7dec5;color:#547c54;font-size:.65rem;line-height:1.4}.tpplus-demo-bridge{border:1px solid #cddce8;background:#eaf3fa}.tpplus-demo-bridge>span{color:#2e6c95}.tpplus-demo-bridge-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:13px 0}.tpplus-demo-bridge-line b{border-radius:7px;background:#145e8f;color:#fff;padding:8px 10px;font-size:.72rem}.tpplus-demo-bridge-line em{color:#255b7d;font-size:.73rem;font-style:normal;font-weight:700}.tpplus-demo-bridge-line i{color:#5796b6;font-style:normal}.tpplus-demo-bridge p{color:#58748a}
.tpplus-demo-workshops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.tpplus-demo-workshops article{display:grid;gap:5px;min-width:0;padding:16px 18px;border-left:4px solid #3b8db8;border-radius:8px;background:#e7f1f7}.tpplus-demo-workshops article:nth-child(2){border-left-color:#7e68a7;background:#f0edf7}.tpplus-demo-workshops article:nth-child(3){border-left-color:#da883d;background:#fbf1e7}.tpplus-demo-workshops b{color:#487b9c;font-size:.58rem;letter-spacing:.08em}.tpplus-demo-workshops strong{color:#1a4b6b;font-size:.9rem}.tpplus-demo-workshops span{color:#5b7387;font-size:.69rem;line-height:1.45}.tpplus-demo-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.tpplus-demo-footer p{max-width:550px;margin:0;color:#6a8193;font-size:.67rem;line-height:1.5}.tpplus-demo-footer>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tpplus-demo-footer button{min-height:41px;border:1px solid #205f8d;border-radius:8px;background:#205f8d;color:#fff;padding:8px 14px;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.tpplus-demo-footer a{color:#226d9e;font-size:.69rem;font-weight:700;text-decoration:none}.tpplus-demo-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.tpplus-demo-platform{display:grid;gap:17px;margin-top:16px;padding:22px;border:1px solid #bcd5e4;border-radius:13px;background:#f5fbff}.tpplus-demo-platform>div>span{color:#2873a0;font-size:.59rem;letter-spacing:.09em;font-weight:800}.tpplus-demo-platform h3{margin:7px 0 5px;color:#184a6a;font-size:1.1rem}.tpplus-demo-platform p{margin:0;color:#607b8e;font-size:.7rem;line-height:1.5}.tpplus-demo-platform ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.tpplus-demo-platform li{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:12px;border:1px solid #d7e5ee;border-radius:9px;background:#fff;color:#355f7a;font-size:.68rem;line-height:1.42}.tpplus-demo-platform li b{display:grid;place-items:center;width:23px;height:23px;flex:0 0 23px;border-radius:50%;background:#dbeef8;color:#20658e;font-size:.63rem}.tpplus-demo-platform button{justify-self:start;min-height:39px;border:1px solid #23729f;border-radius:8px;background:#fff;color:#1d6791;padding:8px 13px;font:inherit;font-size:.7rem;font-weight:750;cursor:pointer}.tpplus-demo-platform button:hover{background:#eaf5fb}.tpplus-demo-platform button[hidden]{display:none}
#tpplus-module-title{scroll-margin-top:160px}
@media(max-width:1050px){.tpplus-demo-main{grid-template-columns:1fr}.tpplus-demo-case{min-height:240px}.tpplus-demo-reasoning{grid-template-columns:repeat(2,minmax(0,1fr))}.tpplus-demo-platform ol{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.tpplus-demo{padding:21px}.tpplus-demo-heading{align-items:flex-start;flex-direction:column}.tpplus-demo-picker{width:100%}.tpplus-demo-picker button{flex:1}.tpplus-demo-phases{grid-template-columns:1fr}.tpplus-demo-phases article{min-height:0}.tpplus-demo-reasoning,.tpplus-demo-bottom,.tpplus-demo-workshops,.tpplus-demo-platform ol{grid-template-columns:1fr}.tpplus-demo-platform{padding:18px}.tpplus-demo-platform button{width:100%}.tpplus-demo-footer{align-items:flex-start;flex-direction:column}.tpplus-demo-footer>div{width:100%}.tpplus-demo-footer button{width:100%}}
.product-nav{overflow-x:auto;scrollbar-width:none}.product-nav a{white-space:nowrap}.product-nav::-webkit-scrollbar{display:none}.tpplus-dot{background:#f0a067!important}
.graph-space-switcher{display:flex;align-items:center;gap:7px;margin-left:auto;padding-left:12px;white-space:nowrap}.graph-space-switcher label{margin:0;color:#9ebcda;font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.graph-space-switcher select{max-width:210px;min-height:28px;border:1px solid rgba(190,220,250,.3);border-radius:6px;background:#163d64;color:#fff;padding:4px 26px 4px 8px;font-size:.68rem}.graph-space-switcher button{min-height:28px;border:1px solid rgba(190,220,250,.3);border-radius:6px;background:rgba(255,255,255,.08);color:#d9edff;padding:4px 9px;font-size:.66rem}.graph-space-switcher button:hover{background:rgba(255,255,255,.16)}.active-space-note{display:block;margin-top:5px;color:#617b91;font-size:.66rem;font-weight:400}.active-space-note strong{color:#246796}.graph-space-dialog{width:min(620px,calc(100% - 28px));max-height:calc(100svh - 32px);overflow:auto;padding:0;border:0;border-radius:18px;color:#102944;background:#f7faff;box-shadow:0 28px 90px rgba(4,21,39,.35)}.graph-space-dialog::backdrop{background:rgba(5,18,34,.72);backdrop-filter:blur(8px)}.workspace .graph-space-form{position:static;margin:0;padding:32px;border:0;background:transparent}.graph-space-form>label{margin:20px 0 7px;color:#35597b;font-size:.72rem;font-weight:700}.graph-space-form>label span{color:#7d8fa1;font-weight:400}.graph-space-form input,.workspace .graph-space-form textarea{display:block;width:100%;min-height:46px;border:1px solid #b9ccdd;border-radius:8px;background:#fff;color:#102944;padding:10px 12px;font:inherit;font-size:.85rem}.workspace .graph-space-form textarea{min-height:88px;resize:vertical}.graph-space-form .llm-actions button{min-height:44px;border-radius:7px;padding:0 17px}.graph-space-form #graph-space-cancel{background:transparent;color:#526b84}.graph-space-form #graph-space-submit{background:#174f82;color:#fff;font-weight:700}.graph-space-form #graph-space-submit:hover{background:#246aa5}
.graph-space-help{display:block;margin-top:6px;color:#6b8196;font-size:.67rem}.graph-space-dialog.is-fallback-open{position:fixed;inset:50% auto auto 50%;z-index:1000;transform:translate(-50%,-50%)}
@media(max-width:700px){.graph-space-switcher{margin-left:4px;padding-left:0}.graph-space-switcher label{display:none}.graph-space-switcher select{max-width:165px}.workspace .graph-space-form{padding:24px 20px}.graph-space-form .llm-actions{flex-direction:column-reverse}.graph-space-form .llm-actions button{width:100%}}
.workspace .tpplus-page{overflow:auto;background:#edf3f8}.tpplus-layout{width:min(1220px,calc(100% - 48px));margin:0 auto;padding:34px 0 54px}.workspace .tpplus-hero{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:34px;align-items:stretch;padding:35px;border:0;border-radius:18px;background:linear-gradient(126deg,#102d4c 0%,#17466f 62%,#236a9d 100%);color:#fff;box-shadow:0 16px 40px rgba(25,65,100,.14)}.tpplus-hero>.tpplus-date{display:flex}.tpplus-hero .eyebrow{margin:0 0 12px;color:#91c9ef;font-size:.62rem}.tpplus-edition{display:inline-block;border:1px solid rgba(184,223,249,.35);border-radius:100px;padding:4px 10px;color:#cce9fb;font-size:.65rem}.workspace .tpplus-hero h1{margin:21px 0 17px;font-size:clamp(2.55rem,4.5vw,4.6rem);line-height:1.02;color:#fff}.tpplus-hero h1 span{color:#8bc9f2}.tpplus-hero>div>p:last-child{max-width:690px;margin:0;color:#c6d9e8;font-size:.88rem;line-height:1.75}.tpplus-date{border:1px solid rgba(188,222,247,.26);border-radius:14px;background:rgba(255,255,255,.07);padding:23px;flex-direction:column;justify-content:space-between}.tpplus-date>span{color:#91c9ef;font-size:.6rem;letter-spacing:.1em;font-weight:700}.tpplus-date strong{font-size:2rem;line-height:1.08;letter-spacing:-.04em}.tpplus-date p{margin:0;color:#c6d9e8;font-size:.75rem;line-height:1.7}
.tpplus-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:17px 0 0}.tpplus-tab{display:flex;align-items:center;gap:11px;min-height:54px;border:1px solid #cedde9;border-radius:10px;background:#fff;color:#496981;padding:10px 14px;text-align:left;font-size:.75rem}.tpplus-tab span{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;background:#edf4fa;color:#45769b;font-size:.6rem;font-weight:700}.tpplus-tab:hover{border-color:#84add0;background:#f7fbff}.tpplus-tab.is-active{border-color:#2f78ad;background:#1b527c;color:#fff}.tpplus-tab.is-active span{background:#86c5ed;color:#123f63}
.tpplus-storage-note{margin:15px 3px 0;color:#657d91;font-size:.67rem}.tpplus-storage-note:before{content:'●';margin-right:7px;color:#2f8f6e;font-size:.55rem}.tpplus-section{margin-top:17px;padding:30px;border:1px solid #d1dee9;border-radius:17px;background:#fff;box-shadow:0 9px 28px rgba(25,65,100,.06)}.tpplus-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding-bottom:22px;border-bottom:1px solid #dde7ef}.tpplus-section-heading .eyebrow{margin:0 0 6px;color:#4b7c9f;font-size:.6rem}.tpplus-section-heading h2{margin:0;color:#173f60;font-size:1.65rem;line-height:1.2;letter-spacing:-.035em}.tpplus-section-heading>p{max-width:430px;margin:0;color:#657c90;font-size:.75rem;line-height:1.7}.tpplus-progress{display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:9px;min-width:210px}.tpplus-progress strong{font-size:1.45rem;line-height:1;color:#276b9c}.tpplus-progress span{color:#6f8497;font-size:.68rem}.tpplus-progress i{grid-column:1/-1;height:5px;margin-top:9px;border-radius:100px;background:#e3ebf1;overflow:hidden}.tpplus-progress b{display:block;width:0;height:100%;background:#3c91c6;transition:width .2s}
.tpplus-prep-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:29px;padding-top:25px}.tpplus-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workspace .tpplus-checklist label{display:flex;align-items:flex-start;gap:11px;margin:0;padding:15px;border:1px solid #dce5ec;border-radius:10px;background:#fbfdff;font-size:.74rem;cursor:pointer}.tpplus-checklist label:has(input:checked){border-color:#84b8da;background:#eff8ff}.tpplus-checklist input{width:18px;height:18px;margin:2px 0 0;accent-color:#2e75b6;flex:0 0 18px}.tpplus-checklist strong,.tpplus-checklist small{display:block}.tpplus-checklist strong{color:#254e6c;font-size:.76rem}.tpplus-checklist small{margin-top:4px;color:#708598;font-size:.66rem;font-weight:400;line-height:1.55}.tpplus-resources{padding:22px;border-radius:13px;background:#153b5b;color:#d8eaf7}.tpplus-resources>.eyebrow{margin:0 0 15px;color:#8ec8ed;font-size:.58rem}.tpplus-resources>a{display:flex;justify-content:space-between;gap:14px;padding:15px 0;border-top:1px solid #3c607b;color:inherit;text-decoration:none}.tpplus-resources>a:hover strong{text-decoration:underline;text-underline-offset:3px}.tpplus-resources>a strong,.tpplus-resources>a small{display:block}.tpplus-resources>a strong{color:#fff;font-size:.8rem}.tpplus-resources>a small{margin-top:3px;color:#a8c4d8;font-size:.66rem;line-height:1.5}.tpplus-resources>a>b{font-weight:400;color:#8ec8ed}.tpplus-rule{margin-top:12px;padding:16px;border-radius:9px;background:#0f304c}.tpplus-rule strong{color:#fff;font-size:.72rem}.tpplus-rule p{margin:5px 0 0;color:#adc9dc;font-size:.68rem;line-height:1.65}
.workspace .tpplus-form{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:0;padding:25px 0 0;border:0;background:transparent}.workspace .tpplus-field label{margin:0 0 7px;color:#3f6079;font-size:.68rem;font-weight:700}.tpplus-field.wide{grid-column:1/-1}.workspace .tpplus-field input,.workspace .tpplus-field select,.workspace .tpplus-field textarea{display:block;width:100%;min-height:48px;border:1px solid #cbd9e4;border-radius:8px;background:#fbfdff;color:#173a56;padding:10px 12px;font:inherit;font-size:.78rem;line-height:1.55}.workspace .tpplus-field textarea{min-height:94px;resize:vertical;box-shadow:none;flex:none}.workspace .tpplus-field input:focus,.workspace .tpplus-field select:focus,.workspace .tpplus-field textarea:focus{border-color:#4f94c5;outline:3px solid rgba(79,148,197,.16);outline-offset:0}.tpplus-chain{display:flex;align-items:center;gap:8px;overflow-x:auto;margin:24px 0 0;padding-bottom:5px}.tpplus-chain span{flex:0 0 auto;border:1px solid #cbddea;border-radius:100px;background:#f2f8fc;color:#326487;padding:7px 10px;font-size:.66rem}.tpplus-chain i{color:#80a0b8;font-style:normal;font-size:.7rem}.tpplus-criteria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.tpplus-criteria article{display:flex;gap:12px;padding:17px;border:1px solid #d5e3ed;border-radius:10px;background:#f4f9fd}.tpplus-criteria article>span{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border-radius:9px;background:#1d628f;color:#fff;font-weight:800}.tpplus-criteria strong{color:#245273;font-size:.76rem}.tpplus-criteria p{margin:4px 0 0;color:#698095;font-size:.66rem;line-height:1.55}
.tpplus-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-top:26px}.tpplus-timeline article{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:0 24px;border-right:1px solid #d9e4ec}.tpplus-timeline article:first-child{padding-left:0}.tpplus-timeline article:last-child{padding-right:0;border:0}.tpplus-timeline article>span{display:grid;place-items:center;align-self:start;width:38px;height:38px;border-radius:50%;background:#1f618f;color:#fff;font-size:.7rem;font-weight:800}.tpplus-timeline .eyebrow{margin:3px 0 8px;color:#5080a3;font-size:.56rem}.tpplus-timeline h3{margin:0 0 11px;color:#204d6e;font-size:1rem;line-height:1.35}.tpplus-timeline p:not(.eyebrow){margin:0;color:#647b8f;font-size:.72rem;line-height:1.65}.tpplus-timeline ul{margin:15px 0 0;padding-left:16px;color:#3e6380;font-size:.69rem;line-height:1.85}.tpplus-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:17px;padding:15px 17px;border:1px solid #d1dee9;border-radius:12px;background:#fff;color:#667d90;font-size:.68rem}.tpplus-actions>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.tpplus-actions button{min-height:40px;border:1px solid #bfd1df;border-radius:7px;background:#f7fbfe;color:#285f86;padding:8px 12px;font-size:.7rem;font-weight:650}.tpplus-actions #tpplus-export{border-color:#205f8d;background:#205f8d;color:#fff}.tpplus-actions button:hover{filter:brightness(.96)}
@media(max-width:980px){.workspace .tpplus-hero{grid-template-columns:minmax(0,1fr) 210px;padding:29px}.tpplus-prep-grid{grid-template-columns:1fr}.tpplus-resources{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.tpplus-resources>.eyebrow,.tpplus-rule{grid-column:1/-1}.tpplus-timeline{grid-template-columns:1fr;gap:22px}.tpplus-timeline article,.tpplus-timeline article:first-child,.tpplus-timeline article:last-child{padding:0 0 22px;border:0;border-bottom:1px solid #d9e4ec}.tpplus-timeline article:last-child{padding-bottom:0;border:0}}
@media(max-width:760px){.tpplus-layout{width:calc(100% - 28px);padding-top:18px}.workspace .tpplus-hero{grid-template-columns:1fr;gap:24px;padding:24px}.tpplus-date{min-height:190px}.tpplus-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.tpplus-section{padding:22px}.tpplus-section-heading{align-items:flex-start;flex-direction:column}.tpplus-progress{width:100%}.tpplus-checklist,.workspace .tpplus-form{grid-template-columns:1fr}.tpplus-field.wide{grid-column:auto}.tpplus-criteria{grid-template-columns:1fr}.tpplus-actions{align-items:flex-start;flex-direction:column}.tpplus-actions>div{justify-content:flex-start}}
@media(max-width:480px){.tpplus-layout{width:calc(100% - 20px)}.workspace .tpplus-hero{padding:21px}.workspace .tpplus-hero h1{font-size:2.45rem}.tpplus-tabs{display:flex;overflow-x:auto;padding-bottom:4px}.tpplus-tab{flex:0 0 190px}.tpplus-section{padding:18px}.tpplus-resources{display:block}.tpplus-actions>div,.tpplus-actions button{width:100%}}
@media(min-width:1101px){.workspace .app-header{grid-template-columns:minmax(300px,1fr) auto auto}.app-branding{grid-column:1;grid-row:1}.graph-space-switcher{grid-column:2;grid-row:1}.workspace .account-controls{grid-column:3;grid-row:1}.product-nav{grid-column:1;grid-row:2}.system-metrics{grid-column:2/4;grid-row:2}}
@media(min-width:521px) and (max-width:1100px){.graph-space-switcher{grid-column:1;grid-row:2;justify-self:start;margin-left:0;padding-left:0}.system-metrics{grid-column:2;grid-row:2;max-width:52vw;justify-self:end}.product-nav{grid-column:1/-1;grid-row:3}.workspace .account-controls{grid-column:2;grid-row:1}}
@media(max-width:520px){.system-metrics{display:none}.graph-space-switcher{order:3;width:100%;margin:0;padding:0}.graph-space-switcher select{flex:1;max-width:none}.workspace .product-nav{order:4}}

/* Graph workspaces: visible administration actions and temporal course scope. */
.graph-space-switcher{display:grid;grid-template-columns:auto minmax(150px,210px) auto auto;align-items:center;min-width:0}.graph-space-switcher select{width:100%;min-width:0;max-width:none}.graph-space-switcher button{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.graph-space-switcher .graph-edit-button{background:transparent;color:#aac8e4}
.course-cutoff-control{margin:0 0 0 auto!important;display:flex!important;align-items:center;gap:7px;min-width:220px;color:#6f829a!important;font-size:.61rem!important;text-transform:uppercase;letter-spacing:.07em}.course-cutoff-control select{min-width:155px;max-width:245px;height:32px;border:1px solid #c8d9e8;border-radius:7px;background:#f7fbff;color:#245b86;padding:4px 26px 4px 8px;font-size:.68rem;text-transform:none;letter-spacing:0}.course-cutoff-control select:disabled{color:#8596a6;background:#edf2f6}.scope-bar #scope-detail{max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.corpus-intro-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.corpus-intro-actions .local-analysis-badge{margin:0}.course-timeline-section{padding:28px;border:1px solid #d3e0ea;border-radius:15px;background:#fff;box-shadow:0 8px 28px rgba(26,65,100,.055)}.course-timeline{display:flex;gap:0;overflow-x:auto;padding:12px 2px 5px}.course-timeline-step{position:relative;display:grid;grid-template-columns:34px minmax(150px,1fr);gap:10px;align-items:center;min-width:220px;border:0;border-top:3px solid #c9d9e6;background:#f7fafc;color:#294f6c;padding:15px 18px;text-align:left}.course-timeline-step:not(:last-child):after{content:'→';position:absolute;right:-8px;z-index:1;color:#7e9ab1}.course-timeline-step:hover{background:#edf6fd}.course-timeline-step.is-cutoff{border-top-color:#2377b4;background:#e8f4fd}.course-step-number{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#d9e8f3;color:#316786;font-size:.66rem;font-weight:800}.course-timeline-step.is-cutoff .course-step-number{background:#2377b4;color:#fff}.course-timeline-step strong,.course-timeline-step small{display:block}.course-timeline-step strong{font-size:.76rem;line-height:1.35}.course-timeline-step small{margin-top:4px;color:#758a9c;font-size:.62rem;line-height:1.4}.upload-course-field{display:grid!important;grid-template-columns:auto minmax(240px,420px);align-items:center;justify-content:start;gap:12px;margin:20px 0 14px!important;color:#47667e!important;font-size:.72rem!important}.upload-course-field select,.document-course-assignment select{min-height:40px;border:1px solid #c8d8e5;border-radius:7px;background:#fff;color:#245678;padding:7px 28px 7px 10px;font-size:.72rem}.document-course-assignment{display:flex!important;align-items:center;gap:6px;margin:0!important;color:#6d8295!important;font-size:.61rem!important}.document-course-assignment select{min-height:38px;max-width:230px}.graph-space-dialog{width:min(780px,calc(100% - 28px))}.course-editor-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:24px;padding-top:20px;border-top:1px solid #d8e3ec}.course-editor-heading strong,.course-editor-heading small{display:block}.course-editor-heading strong{color:#244e70;font-size:.8rem}.course-editor-heading small{margin-top:3px;color:#72879a;font-size:.65rem}.course-editor-heading button{min-height:38px;border:1px solid #b9cfdf;border-radius:7px;background:#fff;color:#28658f;padding:7px 11px;font-size:.69rem}.graph-course-list{display:grid;gap:8px;margin-top:12px}.course-editor-row{display:grid;grid-template-columns:35px minmax(210px,1fr) 150px auto;gap:8px;align-items:center;padding:9px;border:1px solid #d4e1eb;border-radius:9px;background:#f3f8fc}.course-editor-position{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#225f8d;color:#fff;font-size:.62rem;font-weight:800}.graph-space-form .course-editor-row input{min-height:40px;font-size:.74rem}.course-editor-controls{display:flex;gap:4px}.course-editor-controls button{width:32px;height:32px;border:1px solid #c4d5e2;border-radius:6px;background:#fff;color:#315f80;padding:0}.course-editor-controls button:disabled{cursor:not-allowed;opacity:.35}.course-editor-controls button:last-child:not(:disabled){color:#a33f4b}
.document-dropzone.is-disabled{cursor:not-allowed;opacity:.55}.document-dropzone.is-disabled:hover{border-color:inherit;background:inherit}
@media(min-width:1101px){.workspace .app-header{grid-template-columns:minmax(220px,1fr) minmax(480px,auto) auto}.graph-space-switcher{grid-column:2;grid-row:1}.workspace .account-controls{grid-column:3;grid-row:1}.system-metrics{grid-column:2/4;grid-row:2}}
@media(min-width:521px) and (max-width:1100px){.graph-space-switcher{grid-column:1/-1;grid-row:2;justify-self:stretch;grid-template-columns:auto minmax(160px,1fr) auto auto;margin:0;padding:0}.system-metrics{display:none}.workspace .app-header{grid-template-rows:auto auto auto}.product-nav{grid-row:3}.graph-space-switcher label{display:block}}
@media(max-width:760px){.scope-bar{flex-wrap:wrap}.course-cutoff-control{order:3;width:100%;min-width:0;margin-left:0!important}.course-cutoff-control select{flex:1;max-width:none}.scope-bar #scope-detail{max-width:none;width:100%;white-space:normal}.corpus-intro-actions{justify-content:flex-start}.course-timeline-section{padding:21px}.upload-course-field{grid-template-columns:1fr}.course-editor-row{grid-template-columns:32px minmax(0,1fr)}.course-editor-row input[type=date],.course-editor-controls{grid-column:2}.course-editor-heading{align-items:flex-start;flex-direction:column}.document-course-assignment{align-items:flex-start;flex-direction:column}.document-course-assignment select{width:100%;max-width:none}}
@media(max-width:520px){.graph-space-switcher{display:grid;grid-template-columns:minmax(0,1fr) auto auto;width:100%}.graph-space-switcher>label{display:none}.graph-space-switcher select{max-width:none}.graph-space-switcher button{padding-inline:8px}.course-timeline-step{min-width:195px}.corpus-intro-actions .local-analysis-badge{width:100%}}

/* Super-administration: comptes, quotas, cohortes et règles d'ingestion. */
.workspace .administration-page{overflow:auto;background:#edf3f7}.administration-layout{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:34px 0 60px}.administration-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;padding:34px;border-radius:18px;background:linear-gradient(126deg,#102e4d,#174d73 62%,#1d6d8f);color:#fff;box-shadow:0 16px 40px rgba(25,65,100,.14)}.administration-hero .eyebrow{margin:0 0 10px;color:#9fd5ee}.workspace .administration-hero h1{margin:0;color:#fff;font-size:clamp(2.5rem,4.3vw,4.35rem);line-height:1.02;letter-spacing:-.055em}.administration-hero h1 span{color:#8bd1e8}.administration-hero>div>p:last-child{max-width:680px;margin:17px 0 0;color:#c7deea;font-size:.83rem;line-height:1.7}.administration-stats{display:grid;grid-template-columns:repeat(3,112px);gap:8px}.administration-stats article{display:flex;min-height:112px;flex-direction:column;justify-content:flex-end;border:1px solid rgba(190,226,244,.25);border-radius:12px;background:rgba(255,255,255,.07);padding:15px}.administration-stats strong{color:#fff;font-size:1.75rem}.administration-stats span{margin-top:4px;color:#acd2e5;font-size:.62rem;line-height:1.35}.administration-status{min-height:20px;margin:15px 2px;color:#5e788b;font-size:.7rem}.administration-status.is-error{color:#a63e4a}.administration-status.is-success{color:#1f7b5d}.administration-warning{margin:0 0 16px;border:1px solid #e9c97b;border-radius:12px;background:#fff8df;padding:17px 20px;color:#68501b}.administration-warning strong{font-size:.78rem}.administration-warning p{margin:5px 0 0;font-size:.69rem;line-height:1.6}.administration-warning code{font-size:.64rem}.administration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.administration-card{border:1px solid #d1dee8;border-radius:16px;background:#fff;padding:26px;box-shadow:0 8px 28px rgba(25,65,100,.055)}.administration-card-wide{grid-column:1/-1}.administration-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #dce6ee}.administration-card-head .eyebrow{margin:0 0 5px;color:#4d7b9a;font-size:.58rem}.administration-card-head h2{margin:0;color:#183f5f;font-size:1.5rem}.administration-card-head>span{color:#718597;font-size:.66rem}.administration-inline-form{display:grid;grid-template-columns:1.25fr 1.1fr .75fr .55fr .8fr auto;gap:9px;align-items:end;margin:19px 0 21px}.administration-form{display:grid;gap:14px;margin-top:18px}.administration-inline-form label,.administration-form label{display:grid;gap:6px;margin:0}.administration-inline-form label>span,.administration-form label>span,.administration-fixed-setting>span{color:#526d82;font-size:.62rem;font-weight:700}.administration-inline-form input,.administration-inline-form select,.administration-form input,.administration-form select,.administration-form textarea,.administration-user-row input,.administration-user-row select{width:100%;min-height:42px;border:1px solid #c7d7e3;border-radius:7px;background:#fbfdff;color:#173c58;padding:8px 10px;font:inherit;font-size:.72rem}.administration-inline-form button,.administration-form button,.administration-user-row button{min-height:42px;border:0;border-radius:7px;background:#1d618e;color:#fff;padding:8px 14px;font-size:.69rem;font-weight:700}.administration-inline-form button:disabled,.administration-form button:disabled,.administration-user-row button:disabled{cursor:not-allowed;opacity:.5}.administration-help{min-height:38px;margin:-7px 0 0;color:#708598;font-size:.66rem;line-height:1.55}.administration-fixed-setting{display:grid;gap:5px;border:1px solid #d6e3ec;border-radius:9px;background:#f2f8fc;padding:14px}.administration-fixed-setting strong{color:#235878;font-size:.76rem}.administration-fixed-setting small{color:#74889a;font-size:.63rem}.administration-user-list{display:grid;gap:8px}.administration-user-row{display:grid;grid-template-columns:minmax(160px,1.25fr) minmax(160px,1fr) 120px 95px minmax(130px,.85fr) auto;gap:9px;align-items:center;border:1px solid #d9e4ec;border-radius:10px;background:#f8fbfd;padding:11px}.administration-user-identity strong,.administration-user-identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.administration-user-identity strong{color:#224b68;font-size:.76rem}.administration-user-identity small{margin-top:3px;color:#708698;font-size:.62rem}.administration-user-quota{display:grid;grid-template-columns:1fr;gap:3px}.administration-user-quota small{color:#75899a;font-size:.57rem}.administration-user-row .role-badge{display:inline-flex;justify-content:center;border-radius:100px;background:#dceffa;color:#21658d;padding:7px 10px;font-size:.62rem;font-weight:700}.administration-user-row .role-badge.superadmin{background:#173f60;color:#fff}.administration-user-active{display:flex;align-items:center;gap:7px;color:#4d677c;font-size:.64rem}.administration-user-active input{width:17px;min-height:17px;accent-color:#2779a9}.administration-cohort-list{display:grid;gap:8px;margin-top:19px}.administration-cohort-item{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dae4ec;border-radius:9px;background:#f8fbfd;padding:12px 14px}.administration-cohort-item strong,.administration-cohort-item small{display:block}.administration-cohort-item strong{color:#234d6b;font-size:.75rem}.administration-cohort-item small{margin-top:3px;color:#75899a;font-size:.62rem}.administration-cohort-item span{border-radius:100px;background:#e3f0f7;color:#276887;padding:5px 8px;font-size:.58rem}.administration-cohort-item.is-inactive{opacity:.55}
.administration-user-row{grid-template-columns:minmax(160px,1.25fr) minmax(150px,1fr) 116px 86px minmax(120px,.8fr) auto auto}
@media(max-width:1050px){.administration-hero{grid-template-columns:1fr}.administration-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.administration-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.administration-inline-form button{grid-column:1/-1}.administration-user-row{grid-template-columns:minmax(180px,1fr) 1fr 110px}.administration-user-row .administration-user-active,.administration-user-row button{grid-row:2}.administration-user-row .administration-user-quota{grid-row:2}}
@media(max-width:760px){.administration-layout{width:calc(100% - 28px);padding-top:18px}.administration-hero{padding:24px}.administration-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.administration-stats article{min-height:90px;padding:11px}.administration-grid{grid-template-columns:1fr}.administration-card-wide{grid-column:auto}.administration-card{padding:20px}.administration-inline-form{grid-template-columns:1fr}.administration-inline-form button{grid-column:auto}.administration-user-row{grid-template-columns:1fr}.administration-user-row .administration-user-active,.administration-user-row button,.administration-user-row .administration-user-quota{grid-row:auto}.administration-card-head{align-items:flex-start;flex-direction:column}.workspace .administration-hero h1{font-size:2.55rem}}

/* Du support au parcours : atelier professeur, distinct de la timeline documentaire. */
.workspace .learning-path-page{overflow:auto;background:#edf3f7}.learning-path-layout{display:grid;grid-template-columns:350px minmax(0,1fr);min-height:calc(100vh - 154px)}.learning-path-sidebar{position:sticky;top:0;align-self:start;min-height:calc(100vh - 154px);border-right:1px solid #d1dde6;background:#f9fbfd;padding:34px 30px}.learning-path-sidebar>.eyebrow{margin:0 0 9px;color:#3f789d}.learning-path-state{display:inline-flex;border-radius:100px;background:#dce9f2;color:#315f7b;padding:5px 9px;font-size:.6rem;font-weight:700}.learning-path-state.is-draft{background:#fff0c8;color:#7d5b12}.learning-path-state.is-validated{background:#d7f0e5;color:#1d7254}.workspace .learning-path-sidebar h1{margin:20px 0 14px;color:#173f60;font-size:2.85rem;line-height:1.02;letter-spacing:-.055em}.learning-path-sidebar h1 span{color:#2f83ad}.learning-path-sidebar>p:not(.eyebrow):not(.learning-path-status){color:#627b8e;font-size:.73rem;line-height:1.7}.learning-path-brief-form{display:grid;gap:13px;margin-top:22px}.learning-path-brief-form label{display:grid;gap:6px;margin:0}.learning-path-brief-form label>span{color:#47657b;font-size:.64rem;font-weight:700}.learning-path-brief-form input,.workspace .learning-path-brief-form textarea{width:100%;min-height:43px;border:1px solid #c7d6e2;border-radius:8px;background:#fff;color:#173b56;padding:9px 11px;font:inherit;font-size:.71rem;line-height:1.5;resize:vertical}.learning-path-brief-form button,.learning-path-actions button,.learning-path-add-step{min-height:43px;border:0;border-radius:8px;background:#1d638e;color:#fff;padding:9px 13px;font-size:.69rem;font-weight:700}.learning-path-brief-form button:disabled,.learning-path-actions button:disabled,.learning-path-add-step:disabled{cursor:not-allowed;opacity:.45}.learning-path-status{min-height:34px;margin:13px 0 0;color:#617a8e;font-size:.66rem;line-height:1.55}.learning-path-status.is-error{color:#a33d49}.learning-path-status.is-success{color:#1e7759}.learning-path-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.learning-path-actions #learning-path-save{border:1px solid #aac6d8;background:#fff;color:#286383}.learning-path-actions #learning-path-validate{background:#21785d}.learning-path-principle{margin-top:19px;border:1px solid #cadde9;border-radius:10px;background:#eef7fc;padding:14px}.learning-path-principle strong{color:#245a7a;font-size:.69rem}.learning-path-principle p{margin:5px 0 0;color:#668095;font-size:.64rem;line-height:1.55}.learning-path-workspace{padding:34px}.learning-path-workspace>header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:22px;border-bottom:1px solid #d4e0e9}.learning-path-workspace>header .eyebrow{margin:0 0 5px;color:#4a7b9a;font-size:.58rem}.learning-path-workspace>header h2{margin:0;color:#173f60;font-size:1.6rem}.learning-path-workspace>header>p{max-width:400px;margin:0;color:#697f91;font-size:.69rem;line-height:1.6}.learning-path-empty{display:grid;place-items:center;min-height:470px;text-align:center;color:#6d8496}.learning-path-empty>span{font-size:3.3rem;color:#73a7c5}.learning-path-empty h3{margin:6px 0 0;color:#2a5876;font-size:1.1rem}.learning-path-empty p{max-width:430px;margin:8px 0 0;font-size:.71rem;line-height:1.65}.learning-path-step-list{display:grid;gap:13px;margin-top:21px}.learning-path-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:15px;border:1px solid #cfdee8;border-radius:13px;background:#fff;padding:17px;box-shadow:0 7px 22px rgba(25,65,100,.05)}.learning-path-step.is-dragging{opacity:.45}.learning-path-step.drag-target{border-color:#3485b2;box-shadow:0 0 0 3px rgba(52,133,178,.13)}.learning-path-step-handle{display:grid;align-content:start;justify-items:center;gap:7px;color:#71899a;cursor:grab}.learning-path-step-handle strong{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#1f668e;color:#fff;font-size:.66rem}.learning-path-step-handle span{font-size:1rem;letter-spacing:-.2em}.learning-path-step-content{min-width:0}.learning-path-step-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.learning-path-step input,.learning-path-step textarea{width:100%;border:1px solid #d1dfe8;border-radius:7px;background:#fbfdff;color:#173d59;padding:8px 10px;font:inherit;font-size:.7rem;line-height:1.5;resize:vertical}.learning-path-step-title{font-size:.92rem!important;font-weight:750;color:#214f6e!important}.learning-path-step-controls{display:flex;gap:4px}.learning-path-step-controls button{width:31px;height:31px;border:1px solid #c4d7e3;border-radius:6px;background:#fff;color:#2c6383;padding:0}.learning-path-step-controls button:last-child{color:#a1404b}.learning-path-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:9px}.learning-path-fields label{display:grid;gap:4px;color:#62798b;font-size:.58rem;font-weight:700}.learning-path-fields label.wide{grid-column:1/-1}.learning-path-step-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-top:11px}.learning-path-concepts{display:flex;gap:5px;flex-wrap:wrap}.learning-path-concepts input{min-width:230px}.learning-path-confidence{border-radius:100px;background:#e8f2f7;color:#32647f;padding:6px 9px;font-size:.58rem;white-space:nowrap}.learning-path-sources{margin-top:9px;border-top:1px solid #e0e9ef;padding-top:9px}.learning-path-sources summary{color:#2f6b8f;font-size:.64rem;cursor:pointer}.learning-path-source-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.learning-path-source-list span{border-radius:6px;background:#edf4f8;color:#577184;padding:5px 7px;font-size:.58rem}.learning-path-confirmation{margin:8px 0 0;color:#8a6724;font-size:.62rem;line-height:1.5}.learning-path-add-step{margin-top:14px;border:1px dashed #8db5cb;background:transparent;color:#286687;width:100%}
@media(max-width:980px){.learning-path-layout{grid-template-columns:300px minmax(0,1fr)}.learning-path-sidebar{padding:27px 22px}.learning-path-workspace{padding:27px 22px}.learning-path-fields{grid-template-columns:1fr}.learning-path-fields label.wide{grid-column:auto}}
@media(max-width:760px){.learning-path-layout{display:block}.learning-path-sidebar{position:static;min-height:0;border:0;border-bottom:1px solid #d1dde6;padding:24px 20px}.workspace .learning-path-sidebar h1{font-size:2.45rem}.learning-path-workspace{padding:24px 16px}.learning-path-workspace>header{align-items:flex-start;flex-direction:column}.learning-path-step{grid-template-columns:34px minmax(0,1fr);padding:13px}.learning-path-step-handle strong{width:30px;height:30px}.learning-path-step-top{grid-template-columns:1fr}.learning-path-step-controls{justify-content:flex-end}.learning-path-actions{grid-template-columns:1fr}}
.learning-path-duration{margin-top:-7px;color:#71889a;font-size:.59rem;text-align:center}

/* Editable cohort rows in the super-administration console. */
.administration-cohort-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.administration-cohort-editor{display:grid;grid-template-columns:minmax(130px,1fr) 110px minmax(150px,1.25fr) auto auto;gap:7px;align-items:center}.administration-cohort-editor input,.administration-cohort-editor select{width:100%;min-height:39px;border:1px solid #c7d7e3;border-radius:7px;background:#fff;color:#173c58;padding:7px 9px;font:inherit;font-size:.68rem}.administration-cohort-editor button{min-height:39px;border:0;border-radius:7px;background:#1d618e;color:#fff;padding:7px 11px;font-size:.66rem;font-weight:700}.administration-cohort-editor button:disabled{opacity:.5}.administration-cohort-active{display:flex!important;align-items:center;gap:5px;margin:0!important;color:#4d677c;font-size:.62rem}.administration-cohort-active input{width:16px;min-height:16px;accent-color:#2779a9}.administration-cohort-item .administration-cohort-active span{background:transparent;color:inherit;padding:0}.administration-cohort-item>small{white-space:nowrap}.administration-cohort-item.is-inactive{opacity:.72}
@media(max-width:1050px){.administration-cohort-item{grid-template-columns:1fr}.administration-cohort-editor{grid-template-columns:1fr 110px}.administration-cohort-editor input:nth-child(3){grid-column:1/-1}.administration-cohort-item>small{margin-top:6px}}
@media(max-width:760px){.administration-cohort-editor{grid-template-columns:1fr}.administration-cohort-editor input:nth-child(3){grid-column:auto}}

/* NASH identity v1 — directional graph mark and high-contrast product system. */
:root{
  --brand-night:#091727;
  --brand-night-2:#10263e;
  --brand-lime:#c9ff3f;
  --brand-lime-soft:#efffc2;
  --brand-mint:#69e7c5;
  --brand-cloud:#f4f7f2;
  --brand-stroke:#d8e1dc;
  --ink:#122338;
  --accent:#c9ff3f;
  --blue:#173f63;
  --blue-deep:#091727;
  --blue-pale:#eff7ef;
  --surface:#f1f5f1;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline-color:var(--brand-lime);
}
.skip{background:var(--brand-lime);color:var(--brand-night);font-weight:800;border-radius:8px}
.brand-signature{gap:10px;letter-spacing:-.075em;isolation:isolate}
.brand-signature .nash-mark{
  display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;
  border-radius:10px;background:var(--brand-lime);box-shadow:0 0 0 1px rgba(9,23,39,.1),0 8px 24px rgba(201,255,63,.12);
}
.brand-signature .nash-mark svg{display:block;width:28px;height:28px}
.brand-signature .nash-mark path{fill:none;stroke:var(--brand-night);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.brand-signature .brand-word{display:inline-block;line-height:1}
.brand-signature .brand-point{color:var(--brand-lime)}
.brand-signature small{letter-spacing:.01em;font-weight:650;text-transform:lowercase}

/* Login and recovery: quieter canvas, stronger signature, useful contrast. */
.login-page{background:var(--brand-cloud);color:var(--brand-night)}
.login-layout{grid-template-columns:minmax(430px,1.02fr) minmax(520px,.98fr)}
.login-aside{
  position:relative;isolation:isolate;overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(201,255,63,.18),transparent 25%),
    radial-gradient(circle at 18% 82%,rgba(105,231,197,.11),transparent 32%),
    linear-gradient(145deg,#071321 0%,#0b1f34 52%,#123452 100%);
  padding:42px 54px;color:#fff;
}
.login-aside::before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.24;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:56px 56px;mask-image:linear-gradient(135deg,transparent 8%,#000 58%,transparent 100%);
}
.login-aside::after{
  content:"";position:absolute;right:-120px;bottom:-170px;width:480px;height:480px;border:1px solid rgba(201,255,63,.2);border-radius:50%;
  box-shadow:0 0 0 74px rgba(201,255,63,.035),0 0 0 148px rgba(105,231,197,.025);z-index:-1;
}
.login-aside .brand-signature{color:#fff;font-size:1.8rem}
.login-aside .brand-signature small{border-left-color:rgba(255,255,255,.24);color:#dce7e2}
.login-manifesto{max-width:590px}
.login-manifesto .eyebrow{color:var(--brand-lime);font-size:.68rem;letter-spacing:.16em}
.login-manifesto h1{font-size:clamp(3.6rem,5.8vw,6rem);font-weight:720;letter-spacing:-.07em}
.login-manifesto h1 span{color:var(--brand-lime)}
.login-manifesto>p:last-child{color:#bdcbc7;max-width:430px}
.login-aside-foot{border-top-color:rgba(255,255,255,.15);color:#8fa69e;letter-spacing:.14em}
.login-main{position:relative;background:linear-gradient(160deg,#fff 0%,#f5f7f1 100%);padding:42px 9%;gap:52px}
.back-link{font-weight:650;color:#49605a;text-decoration:none}
.back-link::first-letter{color:#0b8e70}
.login-content{width:min(440px,100%)}
.login-content>.eyebrow{color:#5e736d;letter-spacing:.15em}
.login-content h2{color:var(--brand-night);font-size:clamp(3.1rem,4.6vw,4.35rem);font-weight:740;letter-spacing:-.075em}
.login-intro{color:#62736f}
#login-form label,.recovery-form label{color:#243a43;font-size:.8rem;letter-spacing:.01em}
#login-form input,.recovery-form input{
  min-height:58px;border:1px solid #c9d4ce;border-radius:12px;background:rgba(255,255,255,.82);color:var(--brand-night);padding:13px 16px;
  box-shadow:0 4px 18px rgba(9,23,39,.035);transition:border-color .18s,box-shadow .18s,background .18s;
}
#login-form input:focus,.recovery-form input:focus{
  border-color:#7ca925;outline:3px solid rgba(201,255,63,.28);outline-offset:0;background:#fff;box-shadow:0 8px 26px rgba(9,23,39,.07);
}
.password-field button{right:8px;top:8px;bottom:8px;border-radius:8px;color:#40554f;font-weight:700}
.password-field button:hover{background:#eef5e9}
.primary-button,#login-submit{
  min-height:58px;border:1px solid var(--brand-lime);border-radius:12px;background:var(--brand-lime);color:var(--brand-night);
  box-shadow:0 12px 30px rgba(116,157,22,.16);font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;
}
.primary-button:hover:not(:disabled),#login-submit:hover:not(:disabled){background:#d7ff75;transform:translateY(-1px);box-shadow:0 16px 34px rgba(116,157,22,.22)}
.forgot-link a{text-decoration-color:#8a9c96;text-underline-offset:5px}
.login-access-note,.login-footer{color:#7d8d88}
.login-help{border-top-color:#d9e1dc;color:#2e433d}
.form-status{border-left-color:var(--brand-lime);background:#f0f8e7}

/* Workspace shell. */
.workspace{background:#e9efeb;color:var(--ink)}
.workspace .app-header{
  min-height:126px;color:#fff;border:0;
  background:
    radial-gradient(circle at 84% -10%,rgba(201,255,63,.19),transparent 27%),
    linear-gradient(112deg,#071321 0%,#0a1b2e 54%,#12324e 100%);
  box-shadow:0 12px 34px rgba(9,23,39,.18);overflow:hidden;
}
.workspace .app-header::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;
  background-image:linear-gradient(90deg,transparent 0 96%,rgba(255,255,255,.14) 96% 97%,transparent 97%),linear-gradient(0deg,transparent 0 94%,rgba(255,255,255,.1) 94% 95%,transparent 95%);
  background-size:72px 72px;
}
.workspace .app-header>*{position:relative;z-index:1}
.workspace .brand-signature{color:#fff;font-size:1.45rem;gap:8px}
.workspace .brand-signature .nash-mark{width:34px;height:34px;flex-basis:34px;border-radius:9px}
.workspace .brand-signature .nash-mark svg{width:25px;height:25px}
.workspace .brand-signature small{color:#d4dfdb;border-left-color:rgba(255,255,255,.22);margin-left:8px;padding-left:10px}
.product-name{color:var(--brand-lime);border-left-color:rgba(255,255,255,.2);text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:850}
.product-note{color:#8fa8a1;letter-spacing:.025em}
.graph-space-switcher label{color:var(--brand-lime);letter-spacing:.13em}
.graph-space-switcher select{
  border-color:rgba(201,255,63,.27);background:rgba(255,255,255,.07);color:#fff;box-shadow:none;
}
.graph-space-switcher select option{color:var(--brand-night)}
.graph-space-switcher button,.workspace .account-controls button{
  border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.055);color:#e7efec;border-radius:9px;
}
.graph-space-switcher button:hover,.workspace .account-controls button:hover{border-color:rgba(201,255,63,.46);background:rgba(201,255,63,.1);color:#fff}
.workspace .account-controls>span{color:#c8d5d1}
.system-metrics span,.system-metrics a{
  position:relative;padding-left:20px;color:#a9bbb6;border-color:rgba(255,255,255,.13);background:rgba(2,10,18,.22);
}
.system-metrics span::before,.system-metrics a::before{
  content:"";position:absolute;left:9px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--brand-mint);transform:translateY(-50%);box-shadow:0 0 10px rgba(105,231,197,.72);
}
.product-nav{gap:7px}
.product-nav a,.product-nav span{color:#9db0aa;border-bottom-width:2px;font-weight:620;transition:color .16s,background .16s,border-color .16s}
.product-nav a:hover{color:#fff;background:rgba(255,255,255,.035)}
.product-nav a[aria-current=page],.product-nav span[aria-current=page]{color:#fff;border-bottom-color:var(--brand-lime)}
.nav-dot{background:var(--brand-lime)!important;box-shadow:0 0 0 3px rgba(201,255,63,.12)}

.workspace .synapse-shell{background:#e9efeb}
.conversation-pane{border-color:#d7e0db;background:linear-gradient(165deg,#fbfcfa,#f4f7f3);box-shadow:0 10px 34px rgba(9,23,39,.075)}
.scope-bar{border-color:#d8e1dc;background:rgba(255,255,255,.82);box-shadow:0 8px 22px rgba(9,23,39,.045)}
.scope-label{color:#6a7d77}
.scope-bar strong{border-color:#bfd76d;background:var(--brand-lime-soft);color:#32450e}
.course-cutoff-control select{border-color:#d0dbd5;background:#f7faf7;color:#31473f}
.conversation-intro .eyebrow{color:#527415;letter-spacing:.13em}
.workspace .conversation-intro h1{color:var(--brand-night);font-weight:740}
.conversation-intro>p:last-child{color:#60736d}
.workspace .examples button{border-color:#d5dfda;color:#27443b;box-shadow:0 3px 11px rgba(9,23,39,.04)}
.workspace .examples button:hover:not(:disabled){border-color:#9fc33d;background:var(--brand-lime-soft);color:#26370c}
.workspace textarea{border-color:#ced9d3;color:var(--brand-night);box-shadow:0 4px 16px rgba(9,23,39,.05)}
.workspace textarea:focus{border-color:#8eae34;outline-color:rgba(201,255,63,.35)}
.workspace #send{border:1px solid var(--brand-lime);background:var(--brand-lime);color:var(--brand-night);font-weight:820;box-shadow:0 9px 24px rgba(103,139,19,.14)}
.workspace #send:hover:not(:disabled){background:#d8ff75;transform:translateY(-1px)}
.workspace .user{background:linear-gradient(135deg,#142b40,#091727);box-shadow:0 7px 20px rgba(9,23,39,.18)}
.workspace .bot{border-color:#d8e1dc;box-shadow:0 5px 18px rgba(9,23,39,.05)}
.workspace .chip{border-color:#c8d8d0;background:#f0f7f2;color:#285d4e}

.graph-pane,.personal-visual{
  border-color:#233c4f;background:
    radial-gradient(circle at 50% 46%,rgba(105,231,197,.055),transparent 24%),
    radial-gradient(circle at 50% 46%,transparent 0 21%,rgba(201,255,63,.055) 21.2% 21.5%,transparent 21.7% 34%,rgba(105,231,197,.04) 34.2% 34.5%,transparent 34.7%),
    linear-gradient(155deg,#071321,#0c2135);
  box-shadow:0 15px 38px rgba(9,23,39,.2);
}
.graph-kicker,.personal-visual-head .eyebrow{color:var(--brand-lime)}
.graph-toolbar h2,.personal-visual-head h2{color:#f1f7f4}
.graph-actions button,.personal-visual-head button{border-color:rgba(201,255,63,.22);color:#c9d8d3;background:rgba(255,255,255,.045)}
.graph-actions button:hover,.personal-visual-head button:hover{border-color:rgba(201,255,63,.5);background:rgba(201,255,63,.09)}
.graph-legend{background:rgba(4,13,22,.82);border-top-color:rgba(201,255,63,.12);color:#8da39c}
.legend-dot.concept{background:var(--brand-lime)}
.legend-dot.phase{background:var(--brand-mint)}
.graph-help{color:#667f77}
.workspace-footer{border-top-color:#d5dfda;background:#f8faf7;color:#70817c}

/* Carry the identity through the task-oriented views. */
.workspace .corpus-page,.workspace .validation-page,.workspace .learning-path-page,.workspace .administration-page,.workspace .tpplus-page{background:#eef3ef}
.administration-hero,.workspace .tpplus-hero{
  background:
    radial-gradient(circle at 88% 10%,rgba(201,255,63,.2),transparent 25%),
    linear-gradient(125deg,#071321,#102943 68%,#17405a);
  box-shadow:0 18px 44px rgba(9,23,39,.16);
}
.administration-hero .eyebrow,.tpplus-hero .eyebrow{color:var(--brand-lime)}
.workspace .administration-hero h1 span,.workspace .tpplus-hero h1 span{color:var(--brand-lime)}
.administration-stats article{border-color:rgba(201,255,63,.19);background:rgba(255,255,255,.055)}
.administration-stats span{color:#9fb3ad}
.administration-card,.tpplus-section,.tpplus-course-switcher,.learning-path-step{border-color:#d7e0db;box-shadow:0 8px 28px rgba(9,23,39,.05)}
.administration-inline-form button,.administration-form button,.administration-user-row button,
.learning-path-brief-form button,.learning-path-add-step,.tpplus-actions #tpplus-export{
  background:var(--brand-night);color:#fff;border-color:var(--brand-night);
}
.learning-path-actions #learning-path-validate{background:#2e765f}
.learning-path-sidebar{border-right-color:#d7e0db;background:#f9fbf8}
.workspace .learning-path-sidebar h1{color:var(--brand-night)}
.workspace .learning-path-sidebar h1 span{color:#6f931d}
.learning-path-step-handle strong,.tpplus-criteria article>span,.tpplus-timeline article>span{background:var(--brand-night)}
.learning-path-principle{border-color:#cfe08e;background:#f4fbdc}
.tpplus-tabs{border-color:#d7e0db;background:#f8faf7}
.tpplus-tab.is-active{border-color:#a9cb44;background:var(--brand-lime-soft);color:#2f420d}
.tpplus-tab.is-active span{background:var(--brand-night);color:var(--brand-lime)}
.tpplus-resources{background:var(--brand-night)}
.tpplus-resources>.eyebrow,.tpplus-resources>a>b{color:var(--brand-lime)}

@media(max-width:1000px){
  .login-layout{grid-template-columns:1fr 1fr}
  .login-aside,.login-main{padding:32px}
}
@media(max-width:700px){
  .login-layout{grid-template-columns:1fr}
  .login-aside{padding:18px 22px;min-height:78px}
  .login-aside .brand-signature{font-size:1.55rem}
  .login-main{padding:20px 24px 28px}
  .brand-signature .nash-mark{width:34px;height:34px;flex-basis:34px}
}
@media(max-width:520px){
  .workspace .brand-signature .brand-word{font-size:1.25rem}
  .workspace .brand-signature .nash-mark{width:32px;height:32px;flex-basis:32px}
  .workspace .brand-signature small{display:none}
}

/* Keep the full product navigation readable on standard laptop widths. */
@media(min-width:1101px){
  .workspace .app-header{grid-template-columns:minmax(390px,1fr) minmax(360px,auto) auto}
  .workspace .product-nav{grid-column:1/-1;grid-row:2;overflow-x:auto;scrollbar-width:none}
  .workspace .product-nav::-webkit-scrollbar{display:none}
  .workspace .system-metrics{display:none}
}
@media(min-width:1101px) and (max-width:1400px){.workspace .product-note{display:none}}
